In general, embodiments herein disclosed relate to systems, methods, and computer program products for technical project management and, more specifically, a comprehensive system for managing the delivery of a technical project.
Many projects undertaken by large corporations, such as computer network infrastructure design projects and the like, involve a myriad of tasks that need to be completed in order to see the project through from the planning stage to the build/implementation phase and subsequent approval and reporting. Many of these tasks are manual and otherwise time-consuming. These various tasks include, but are not limited to, drafting and cataloging technical requirements; validation of business requirements and translation of business requirements into technical requirements; collaboration with business partners to understand project dependencies; disposition of individual business and technical requirements, and analysis of custom, standard and/or existing capacity needed to fulfill requirements. Additionally, once initial documentation, such as technical requirement documentation is validated and approved, the documents are base-lined and exposuress are identified and documented. Finally, resource availability is determined to perform the necessary design functions and tasks are consolidated when applicable.
In particular, in many projects, business and technical requirements are often defined manually and the associated exposures and constraints are identified manually. Such a manual process allows for variances in the quality of the output and increases the design completion time. These variances in quality may be due to lack of technical resources, lack of access to existing documentation, lack of availability of third party/client resources, inexperience of design team associates and the like.
Additionally, in most project management systems, tracking of data is minimal or not performed at all. As such traceability, in terms of business requirements, technical requirements, technical constraints and the like, is lacking. In addition, in failing to track and/or store relevant data associated with a project, all downstream projects must be re-engineered and are incapable of leveraging off information learned from previous projects.
Therefore, a need exists to develop methods, systems, computer program products and the like which provide for a comprehensive project management system. A need exists to develop a system that adds project consistency to all phases of the project including, but not limited to, planning, technical requirements, project design, build and configuration. In addition, the desired project management system should consolidate, gather and store all planning, design and build inputs, such that, subsequent projects can leverage off information gathered and learned during previous projects. In particular, the desired system should allow for technical requirements to be identified based on previously completed technical requirements associated with the same business requirements seen in the current project. Additionally, the desired system should automate other aspects of the project, such as requisition decisioning and the like. The result of the desired system may include, but is not limited to, a reduction in design completion time, enterprise and global consistency of project output and the like.
The following presents a brief summary of one or more embodiments in order to provide a basic understanding of such embodiments. This summary is not an extensive overview of all contemplated embodiments, and is intended to neither identify key or critical elements of all embodiments, nor delineate the scope of any or all embodiments. Its sole purpose is to present some concepts of one or more embodiments in a simplified form as a prelude to the more detailed description that is presented later.
Methods, systems and computer program products are defined that provide for technical project management. Specifically, a consolidated end-to-end project delivery tool that serves to add efficiency and consistency to the planning, design and build processes of a technical project, such as an information technology project or the like. The system herein described reduces the complexity in the design and build processes, improves hand-off between the phases of the project. Additionally, through the re-use and reliance on existing designs, speed of design and quality of design is improved. Further embodiments of the invention, provide for measuring relevant metrics and identifying areas for process improvement.
A method for technical project management defines a first embodiment of the invention. The method includes identifying a business requirement associated with a technical project and determining one or more technical requirements associated with the business requirement. The method further includes providing, via a computing device, a mapping of the business requirement to the one or more technical requirements and storing, in a centralized data store, the one or more technical requirements.
In one specific embodiment the method further includes determining, via a computing device, infrastructure design for the technical project based on the one or more technical requirements.
In another specific embodiment of the method, determining one or more technical requirements further includes determining the one or more technical requirements associated with the business requirement based on historical technical project business requirement-to-technical requirement associations.
In yet another specific embodiment of the method determining one or more technical requirements further comprises receiving, at a computing device, user selections for technical requirement criteria and determining, at the computing device, the one or more technical requirements associated with the business requirement based on the technical requirement criteria, such technical requirement type, technical requirement category, technical project state (i.e., new or existing) and/or the like.
In one specific embodiment of the method, providing the mapping of the business requirement to the one or more technical requirements further includes providing, via a Graphical User Interface (GUI) application, the mapping of the business requirement to the one or more technical requirements, while in another embodiment, providing, via an information-gathering application, the mapping of the business requirement to the one or more technical requirements.
In still further specific embodiments of the method, mapping of the business requirement to the one or more technical requirements further includes receiving, at the computing device, a user selection input for at least one of the one or more technical requirements and wherein storing the one or more technical requirements further includes storing one or more user selected technical requirements. In another such embodiment of the method, providing the mapping of the business requirement to the one or more technical requirements further includes receiving, at the computing device, a user edit input for at least one of the one or more technical requirements and wherein storing the one or more technical requirements further includes storing the one or more technical requirements including one or more user edited technical requirements. In yet another such embodiment of the method, providing the mapping of the business requirement to the one or more technical requirements further includes receiving, at the computing device, a user add input for adding at least one additional technical requirement and wherein storing the one or more technical requirements further includes storing the one or more technical requirements including one or more additional technical requirements.
A system for technical project management defines a further embodiment of the invention. The system includes at least one computing device including at least one processor and a memory. The system also includes a technical requirement module stored in the memory and executable by the at least one processor. The requirements module is configured to provide for a business requirement associated with a technical project, determine one or more technical requirements associated with the business requirement and store the one or more technical requirements in memory. The requirements module includes a technical requirements application configured to present a mapping of the business requirement to the one or more technical requirements. The technical requirement application may be an information-gathering application, Graphical User Interface (GUI) application or the like.
In one specific embodiment the system further includes an infrastructure design module stored in the memory and executable by the at least one processor, wherein the infrastructure design module is configured to determine infrastructure design for the technical project based on the one or more technical requirements.
In another specific embodiment of the system, the technical requirement module is further configured to determine the one or more technical requirements associated with the business requirement based on historical technical project business requirement-to-technical requirement associations.
In yet another specific embodiment of the system, the technical requirement application is further configured to receive user selections for technical requirement criteria, such as technical requirement type, technical requirement category, technical project state or the like, and wherein the technical requirement module is further configured to determine the one or more technical requirements associated with the business requirement based on the technical requirement criteria.
In still further specific embodiments of the system, the technical requirement application includes a technical requirement selection mechanism configured to receive a user selection input for at least one of the one or more technical requirements and wherein the technical requirement module is further configured to store one or more user selected technical requirements. In other embodiments, the technical requirement application includes a technical requirement edit mechanism configured to receive a user edit input for at least one of the one or more technical requirements and wherein the technical requirement module is further configured to store the one or more technical requirements including one or more user edited technical requirements. In still further embodiments, the technical requirement application includes a technical requirement add mechanism configured to receive a user add input for adding at least one additional technical requirement and wherein the technical requirement module is further configured to store the one or more technical requirements including one or more additional technical requirements.
A computer-program product including a computer-readable medium provides for another embodiment of the invention. The medium includes a first set of codes for causing a computer to determine one or more technical requirements associated with an identified business requirement of a technical project. The medium additionally includes a second set of codes for causing a computer to provide a mapping of the business requirement to the one or more technical requirements. Additionally, the medium includes a third set of codes for causing a computer to store the one or more technical requirements.
Thus, as described in more detail below, systems, methods, computer programs and the like are defined that provide for managing a technical project. In particular, embodiments provide for an end-to-end project delivery tool that includes planning, defining the requirements, designing, building, approving and providing communication/reporting of the technical project. The technical project management delivery tool herein described automates the capture of data and other functionality, such as identification of technical requirements, design infrastructure, build workflows and the like, to add increased efficiency as it relates to the design and build phases of a technical project. Further, embodiments herein described consolidate all planning, design and build input into a central data store and automate the flow of this data throughout the planning, technical requirements, infrastructure design, build and configure phases.
To the accomplishment of the foregoing and related ends, the one or more embodiments comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative features of the one or more embodiments. These features are indicative, however, of but a few of the various ways in which the principles of various embodiments may be employed, and this description is intended to include all such embodiments and their equivalents.
Having thus described embodiments of the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
Embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all, embodiments of the invention are shown. Indeed, the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more embodiments. It may be evident; however, that such embodiment(s) may be practiced without these specific details. Like numbers refer to like elements throughout.
Various embodiments or features will be presented in terms of systems that may include a number of devices, components, modules, and the like. It is to be understood and appreciated that the various systems may include additional devices, components, modules, etc. and/or may not include all of the devices, components, modules etc. discussed in connection with the figures. A combination of these approaches may also be used.
The steps and/or actions of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium may be coupled to the processor, such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. Further, in some embodiments, the processor and the storage medium may reside in an Application Specific Integrated Circuit (ASIC). In the alternative, the processor and the storage medium may reside as discrete components in a computing device. Additionally, in some embodiments, the events and/or actions of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a machine-readable medium and/or computer-readable medium, which may be incorporated into a computer program product.
In one or more embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures, and that can be accessed by a computer. Also, any connection may be termed a computer-readable medium. For example, if software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. “Disk” and “disc”, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs usually reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
Present embodiments provide for systems, methods, computer program products and the like for managing a technical project. In particular, embodiments of the invention provide for an end-to-end project delivery tool that includes planning, defining the requirements, designing, building, approving and providing communication/reporting of the technical project. The technical project management delivery tool herein described automates the capture of data and other functionality, such as identification of technical requirements and the like, to add increased efficiency as it relates to the design and build phases of a technical project. In addition, the project management delivery tool herein described improves hand-offs and communication amongst disparate entities of a technical project.
In addition, by providing for the capture of data at all phases of the technical project, present embodiments of the invention, improve overall project delivery speed and quality through the re-use of data, such as the re-use of designs and the like. In this regard, the technical project management system herein described consolidates the planning, design and build inputs of a technical project into a central data store and automates the flow of such data throughout the planning, technical requirements, infrastructure design, build and/or configuration phases of the project. Such centralized data storing provides the ability to replicate previously completed technical requirements and infrastructure design; eliminating the need to recreate such data each time a similar project request is made.
Moreover, present embodiments provide for measurement of relevant metrics throughout the project delivery process and identification of areas requiring process improvement.
Referring to
Business requirements module 110 provides for identification and capture of business requirements. In addition, business requirements module 110 provides for initial planning of a technical project, such as identification and capture of the general information related to the technical project and/or identification and assessment of the technology impact of the project.
Technical requirement module 120 provides for identification and capture of technical requirements and, more specifically, the technical requirements that satisfy identified business requirements. In one embodiment of the invention, the technical requirements module 120 user defines and associates one or more technical requirements with a previously identified business requirement. In other embodiments of the invention, technical requirements are identified by mapping the identified technical project business requirements to one or more technical requirements and allowing for selection of the technical requirements based on the mapping and/or input of technical requirements not otherwise related to business requirements. In addition, the technical requirement module 120 provides for validating the technical requirements.
Additionally, the technical requirement module 120 provides for identification and capture of project administration data, such design elements, project contacts and sign-off and infrastructure dependencies; and technical project overview information, such as project assumptions, project exposures and/or project constraints. Moreover, the technical requirement module provides for assessing and capturing application, hardware, storage, data retention, high-availability, security, encryption, authentication, operations, facilities, business volume, interface voice and throughput requirements and the like.
Infrastructure design module 130 provides for identifying the design objectives for the technical project and the high level and low level infrastructure/design requirements necessary to build or otherwise implement the technical project. The design requirements serve to identify the data elements, physical or otherwise, subsequently required by the build entity/team. In this regard, the infrastructure design module 130 receives the technical requirements outputted by the technology requirements module 120 and maps or otherwise identifies the design requirements based on the technical requirements. Further, the infrastructure design module 130 serves to validate technical project design solutions. In addition, the infrastructure design module 130 identifies individuals, teams/entities or the like involved in the build phase of the technical project, including third party entities, such as external vendors, suppliers or the like.
Build module 140 provides for automation of the build process by identifying the types of builds that can be automated and implementing automated builds based on the infrastructure/design requirements identified by infrastructure design module 130. In addition to creating and capturing an identified build process, the build module 140 tracks completion of the build by registering completion of build processes in the centralized data store 170. In addition, the tracking function of build module 140 insures or otherwise monitors scheduling requirements to insure that the technical project remains on schedule. Thus, proper automated alerts and/or automated notifications may be implemented to insure that build processes occur on schedule and the like. In this regard, the build module 140 may provide for monitoring and managing of external vendors and/or suppliers to insure that external procurements and/or services are delivered as scheduled and the like.
Approval module 150 provides for utilization of workflow capabilities to insure documentation is properly reviewed and approved by designated entities, processes are properly queued and the like. The documentation may include, but is not necessarily limited to, business requirement documentation, technical requirement documentation, design documentation, build documentation and the like. In this regard approval module 150 provides for approval of various steps, processes and the like associated with the business requirements module 110, the technical requirements module 120, the infrastructure design module 130 and/or the build module 140. The approval module streamlines the communication of documentation to the designated individuals and/or parties to further heighten efficiency in the overall technical project management scheme.
Reporting module 160 provides for automatically capturing predetermined technical project management metrics, such as on-time metrics, quality metrics and the like. In this regard reporting module 160 provides for capturing technical project management metrics from the business requirements module 110, the technical requirements module 120, the infrastructure design module 130 and/or the build module 140. In addition to capturing the metrics, reporting module 160 provides for automatically generating and communicating metrics related reports to designated individuals and/or parties/entities.
Centralized data store 170 provides for a project record database. Each technical project has an associated project record that includes all the information determined and collected at the various modules. In this regard, the project record may include, but is not limited to, business requirements, project exposures, project assumptions, project constraints, technical requirements, project approval designations, infrastructure design, build/workflow plans, project performance metrics, project performance reports, and the like. The historical aspect of the project records allows for subsequent technical projects to leverage off of previous project records as a basis for determining courses of action. As such, technical requirements, infrastructure design, build plans, and the like can be determined for a present technical project based on previously learned experiences of a previous project.
Referring to
At Event 208, a technical requirements portion is added to the project record within the technical requirement module 120. In one embodiment of the invention, the requirement requirements are captured by an information-gathering application configured to create and deploy electronic form solutions to gather information off-line, efficiently and reliably. In other embodiments of the invention, the technical requirements may be captured by a Graphical User Interface (GUI) application configured to provide online or network access to the technical requirement portion of the project record.
As such, at Event 210, technical requirements are defined and captured within the requirement requirements portion of the project record. As described in relation to
In addition to identifying and capturing technical requirements, the technical requirement portion of the project record provides for identifying and capturing application, hardware, storage, data retention, high-availability, security, encryption, authentication, operations, facilities, business volume, interface voice and throughput requirements and the like.
At Event 212, a requirements review is conducted by a designated party/entity, such as an infrastructure/build team or the like, to ensure the accuracy and completeness of the technical requirement portion of the project record.
At Event 214, the technical requirements are approved by designated individuals and/or entities. In addition, any other deliverables identified at the technical requirement module that require approval, are approved at this stage. In specific embodiments of the invention, approval of a deliverable is a pre-requisite of initiating a further deliverable. For example, the technical requirements may require approval prior to initiating design requirement identification and the like. In addition, an approval may be required within the technical requirements module prior to initiating another deliverable within the technical requirements module.
At Event 216, the infrastructure design requirements portion is added to the project record within the infrastructure design module 130. In one embodiment of the invention, the infrastructure design requirements are captured by an information-gathering application configured to create and deploy electronic form solutions to gather information off-line, efficiently and reliably. In other embodiments of the invention, the infrastructure design requirements may be captured by a Graphical User Interface (GUI) application configured to provide online or network access to the infrastructure design requirement portion of the project record.
At Event 218, infrastructure design is defined and captured within the infrastructure design portion of the project record. As previously discussed, according to specific embodiments, the technical project system provides for mapping the technical requirements to one or more deign requirements. The design requirements identify the requirements to build the technical project, including the data elements required by the build team. In addition to identifying design requirements, costs and funding associated with the design requirements may be defined and/or identified. In addition to defining infrastructure design, at this stage of the process, data elements may be procured, both internally and externally from vendors/suppliers. The data elements may include physical elements, such as hardware or the like, intellectual elements, such as software or the like and/or services.
At Event 220, an infrastructure design review is conducted by a designated party/entity, such as an infrastructure/build team or the like, to ensure the accuracy and completeness of the infrastructure design portion of the project record.
At Event 214, the infrastructure design is approved by designated individuals and/or entities. In addition, any other deliverables identified at the infrastructure design module that require approval, are approved at this stage. In specific embodiments of the invention, approval of a deliverable is a pre-requisite of initiating a further deliverable. For example, the infrastructure design may require approval prior to initiating review and deployment of the build and the like. In addition, an approval may be required within the infrastructure design module prior to initiating another deliverable within the infrastructure design module.
At Event 222, a configuration and build sheet is reviewed and deployed that defines the build requirements for the technical project. As previously discussed, the build module 140 may define build requirements/build sheets based on the design requirements and the like. Deployment of the build sheet provides for initiation, implementation and completion of the technical project.
At Event 224, technical project management metrics are determined and/or collected from the various modules that include reporting metrics or information related to reporting metrics. In one specific embodiment, the technical project management metrics are collected from the technical requirement 110 and infrastructure design 120 modules. However, in other embodiments technical project management metrics may be collected from the business requirement module 100 and/or the build module 140, as well. In addition, as previously noted the reporting module 160 is configured to generate reports based on the reporting metrics and communicate the reports to predetermined entities, such as management teams or the like.
Turning the reader's attention to
The technical requirements application 400 includes a technical project requirements section 420 that includes a technical requirement sub-section 430 that includes a business requirement-to-technical requirement traceability matrix 432. In one embodiment of the invention, traceability matrix is configured to map/link a previously identified business requirement to one or more technical requirements. In one such embodiment, a user may identify one or more technical requirements associated with a business requirements. In another embodiment, each previously identified business requirement is mapped/linked to one specific technical requirement. In other embodiments, each previously identified business requirement is mapped/linked to one or more technical requirements. In those embodiments in which each business requirement is mapped/linked to one or more technical requirements, the technical requirements 430 section may include technical requirements selector 434 that is configured to provide for user selection of one or more than one of the mapped technical requirements. It should also be noted that while the business requirements may be mapped to one specific technical requirement or one or more technical requirements, more than one technical requirement may be mapped/linked to the same specific business requirement. Stated from a different perspective, numerous business requirements may be mapped/linked to the same technical requirements.
In addition, the technical requirement 430 section may include a technical requirement input/edit mechanism 436 configured to receive user inputs that define a technical requirement or edit a technical requirement. Input of a technical requirement may be necessary if the technical requirements is not mapped to a business requirement and/or does not require mapping/linking to a business requirement. Editing of a technical requirement if the mapped technical requirements provides for an inadequate definition of the requirement in light of the technical project and/or the business requirement.
At Event 304, a business requirement is displayed that is associated with the technical project. The business requirement may have been previously defined, such as during a business requirements module stage, or the business requirement may have been previously defined during the technical requirement module stage. At Event 306, a user enters or otherwise selects technical requirement criteria, such as a technical requirement type, a technical requirement category and/or a project type (i.e., new or existing technical project). At Event 308, based on the displayed business requirement and the inputted technical requirement criteria, the technical requirement database is queried to determine which technical requirements are mapped/linked to the business requirement and meet the inputted technical requirement criteria.
At Decision 310, a determination is made as to whether the query returns at least one technical requirement from the database. If the query does return at least one technical requirement then, at Event 312, the display is populated with one or more technical requirements, such as via a pull-down menu or the like. At Decision 314, a determination is made as to whether an edit, addition or deletion to the one or more technical requirements is necessary. If an edit is necessary, at Event 316, a text box field is opened to provide for editing the text of a selected technical requirement or adding a technical requirement and/or one or more displayed technical requirements are selected for deletion. After edit/addition/deletion of technical requirements or if, at Decision 314, it is determined that no edits/deletions are necessary, at Event 318, the record of technical requirements is updated/saved in the centralized data store.
If, at Decision 310, no technical requirements are returned from the business requirement-to technical requirement mapping/linking database or if the application is configured such that a user defines the technical requirement associated with a business requirement then, at Event 320, an entry field is displayed for adding one or more technical requirements. At Decision 322, a determination is made as to whether one or more technical requirements are necessary based on the displayed business requirement. In some instances, a business requirement may not warrant technical requirements. If technical requirements are determined to be necessary then, at Event 322, one or more technical requirements are added and saved to the record of technical requirements in the centralized data store. If technical requirements are determined to not be necessary then, at Event 324, the record of technical requirements is updated/saved to reflect no technical requirements associated with the business requirements. Once the technical requirement record has been updated/saved, at Event 326, the method is completed.
At Event 354, business requirements are defined for a specific project. As previously noted, the business requirements may be defined during a business requirements module stage.
At optional Event 356, the technical requirement database is queried to determine which technical requirements are mapped to each of the business requirements. The technical requirements may be mapped to the business requirements based on previous technical project business requirement-to-technical requirement associations. In other embodiments, the information gathering application is configured to provide for a user to define technical requirements associated with a predefined business requirement. In such embodiments, querying the database to determine which requirements are mapped to the business requirements is not necessary. At Event 358, the information-gathering document is populated with business requirements and, optionally, one or more technical requirements. The document may be populated with the business the requirements and optional technical requirements, prior to user access of the document or in conjunction with a user accessing the document. As previous noted, a business requirement may be associated with one specific technical requirement, a business requirement may be associated with one or more technical requirements, or a user may be required to define the technical requirement(s) for the associated business requirement.
At Event 360, a user accesses an information gathering document associated with the specific project. As previously noted, a user may download the information gathering document or otherwise be provided with network access to the information gathering document.
At optional Decision 362, in those embodiments, in which the business requirements are mapped to a technical requirement(s), a determination is made as to whether one of the technical requirements requires editing or deletion. If one of the technical requirements requires editing or deletion then, at Event 364, the technical requirement is edited or deleted accordingly. Editing or deletion of a technical requirement may be needed based on the specific needs of the technical project and/or to better align with the business requirement in light of the technical project. At Decision 366, a determination is made as to whether additional technical requirements require editing or deletion. If additional technical requirements require editing or deletion, the process iteratively returns to Event 364 and the user provides the necessary edits and/or deletes technical requirements requiring such.
If no further technical requirements require editing or deletion or if no editing or deleting of technical requirements was required, at Decision 368, a determination is made, in certain embodiments, as to whether the application is configured such that technical requirements are required to be defined for an associated business requirement or, in other embodiments, as to whether additional technical requirements, beyond those mapped to a business requirement, are required. If a technical requirement is required to be defined/added, at Event 370, the additional technical requirement is defined/added. The additional technical requirement may be associated with a business requirement or the additional technical requirement may be a stand-alone technical requirement requiring no association with a business requirement. In certain instances, a technical project may necessitate technical requirements absent an associated business requirement. At Decision 372, a determination is made as to whether additional technical requirements are required to be added or defined. If additional technical requirements are required, the process iteratively returns to Event 370 and the user provides the necessary information needed to add a technical requirement.
If no additional technical requirements need to be added of if no technical requirements were added, at Event 374, the edits/deletions and/or additions to the technical requirements are saved to the information-gathering document. At Event 376, upon subsequent completion of other information-gathering document sections, the information-gathering document is saved to a centralized data store for subsequent reliance for defining design requirements and the like. At Event 378, the process is completed.
Referring to
The technical requirements application 400 serves to automate specific actions and tasks associated with gathering technical requirements and identifying exposures, assumptions and constraints. The automation provides integration of pertinent administrative information, business requirements, reference architectures and the like, from systems of record. In this regard, automation pertains to business requirement collection, technical requirement traceability and constraint identification.
The technical requirements application/documentation 400 includes a project information section, a revision history section, a change control history section and a project administration section. All of which are not depicted in
As an introductory portion, the technical requirements document 400 a technical project administrative section 402 and a technical project overview section 410. The project administration section 402 includes a design element sub-section 404 that is configured to provide for user input of infrastructure design elements, is infrastructure design is required. If infrastructure design is not required, the design element sub-section 404 may be configured to provide for justification.
The project administration section 402 may additionally include contact and signoff matrix sub-section 406 that is configured to provide for a user to input the names of individuals or entities required to approve various stages of the technical project and provides for sign-off/approval status, sign-off/approval date and related comments, such as conditions or the like. The contact and signoff matrix subsection may link to a corporate directory and or management hierarchy listing for the purpose of identifying the requisite individual or entity responsible for approving a process or stage on the project management scheme. Additionally, project personnel may be pulled from the centralized data store, such as the business requirements module or the like, and auto-populated within the contact and sign-off matrix subsection.
Once the individuals or entities are listed in the contact and sign-off matrix sub-section, the system may be configured to communicate automated electronic communication, such as e-mails, text messages or the like, to the designated contacts or signoff entities to approve a related step in the technical project management system. Additionally, the approval module 150 (shown in
In addition to contacts and signoffs, sub-section 406 may include identification of vendors/external sources, including vendor contact, vendor email, vendor telephone numbers and the like. The vendor information may be pulled from a vendor database and auto-populated within the vendor portion of the contact and sign-off matrix subsection or the vendor information may be manually inputted by a user. The vendor information provided in the vendor contact sub-section may subsequently be automatically imported to an infrastructure design document included in the infrastructure design module 130 (shown in
Additionally, the contacts and signoffs sub-section 406 may include high level milestones that provide for automated or manual input of current expectations regarding the timing (e.g., estimated start date and estimated finish date) of the project to allow for early evaluation of the feasibility of these time expectations. The high-level milestones may subsequently be automatically imported to an infrastructure design document included in the infrastructure design module 130 (shown in
The project administration section 402 may additionally include contact and infrastructure dependency/related initiatives sub-section 408 that provides for manual or automated entry of the project dependencies and/or related initiatives that may be impacted by the technical project, such as impacted by a time delay in the project or the like. A project dependency may be another technical project or any other initiative associated with the business entity. The project dependency/related initiative sub-section 408 may provide for input of the dependency, the production timeline of the dependency the data the dependency is added and the like.
The technical project overview section 410 may include a project description sub-section 411 that provides for manual or automated (e.g., pre-populated) entry of project description information. The project description information may include, but is not limited to, overall objectives of the project, definition of terms/acronyms specific to the project, background of the project, if the project is part of a multi-phase effort, the ultimate goal of the multi-phase effort and the like. The pre-populated information may be subjected to editing at the discretion of the user based on project needs.
Additionally, technical project overview section 410 may include high level requirements section 412 that provides for manual entry of a summary of the technical requirements, exposures, assumptions and the like presented in greater detail in forthcoming sections of the technical requirements application/document 400.
In addition, technical project overview section 410 may include conceptual logical configuration diagram sub-section 413 that provides for manual or automated linking to conceptual logical configuration diagrams or the like. As such, conceptual logical configuration diagram sub-section 413 may provide for a network-accessible link, such as a hyper-link or the like, to diagrams, flow charts, figures or the like.
The technical project overview section 410 includes project assumptions sub-section 414, project exposures sub-section 416 and design issues/project constraint sub-section 418. Project assumptions sub-section 414 provides for a listing of one or more project design assumptions. Standard design assumptions may be provided in the listing by default and other design assumptions may be automatically or manually added to the listing. In addition to the assumptions, sub-section 412 provides for an associated sign-off approval entity/role and sign-off approval name for the assumption. The sign-off approval entity/role and/or sign-off approval name for an assumption may be auto-populated from the contact and sign-off matrix of the project administration section, discussed previously. Additionally, the project assumption sub-section may include an input for a confirming party/individual and a confirmation date. The confirming party input entry may provide a link to a corporate directory or the like and the confirmation date entry field may provide for auto-population of the current date and access to a viewable calendar.
Project exposure sub-section 416 provides for a listing of one or more project design exposures. Design exposures may be automatically or manually added to the listing. In addition to the exposures, sub-section 416 provides for an associated exposure presenter name and entity/role input field and an open date entry field. The open date entry field may provide for auto-population of the current date and access to a viewable calendar. The project exposure sub-section 414 additionally may provide for a exposure mitigation plan entry field and a resolution date entry field. The exposure mitigation entry field provides for manual input of the planned course(s) of action to mitigate or otherwise lessen the exposure. The resolution date field provides for manual input of the date on which the exposure was resolved, if applicable.
Design issue/project constraints sub-section 418 provides for a listing of one or more project design issues and/or technology constraints associated with the project. The information provided for in the project constraint sub-section 418 may subsequently be automatically imported to an infrastructure design document included in the infrastructure design module 130 (shown in
The technical requirements application 400 additionally includes technical project requirements section 420. The technical requirements section 420 may include one or more of technical requirements sub-section 430, application profile sub-section 440, primary product requirement sub-section 450, hardware requirement sub-section 460, storage requirement sub-section 470, data retention requirement sub-section 480, security requirement sub-section 490, high availability requirement sub-section 500, encryption requirement sub-section 510, authentication requirement sub-section 520, operations and monitoring requirement sub-section 530, business volume requirement sub-section 540, facilities requirement sub-section 550, interface requirement sub-section 560, voice requirement sub-section 570 and the like. Each of the subsections may be configured to be collapsible within the application, if the user designates a sub-section as not being applicable to the specified technical project.
Technical requirement sub-section 420 which was previously discussed in relation to
In other embodiments of the invention, the technical project requirements application/document 400 may be configured to automatically map a predefined business requirement to one or more technical requirements. The technical requirements associated with the business requirement may be determined based on historical technical project information (i.e., previous mappings/links between business requirements and technical requirements). Thus, the technical requirements may be automatically populated based on the outcome of the determination. In one embodiment of the invention, each business requirement is mapped to one technical requirement. In such embodiments, the same technical requirement may be mapped to more than one business requirement. In another embodiment of the invention, each business requirement is mapped/linked to one or more technical requirement. In such embodiments, the technical requirement selection/deletion mechanism 434 may be implemented to select or otherwise delete one or more of the mapped technical requirements for the specific project.
Technical requirement input/edit mechanism 436 provides for defining or adding a technical requirement or editing a pre-existing technical requirement based on project needs. As previously noted, defining/adding a technical requirement may be required if the technical project requirement subsection 430 is configured such that a predefined business requirement requires a user to manual define and enter one or more technical requirements. Thus, a defined/added technical requirement may be mapped/linked to a business requirement or the added technical requirement may be a stand-alone technical requirement that does not require association with a business requirement.
The application profile sub-section 440 includes a listing of queries related to the technical project application/software. The application profile sub-section 440 provides for each application/software associated with the project to be listed, either manually or automatically. Manual listing provides for the user to input identifying criteria, such as application number or the like and automated listing provides for pre-population of the list based on the business requirements and or previous projects. Each of the listed applications has a set of queries and each query provides for a related response entry field. The response entry field may be auto-populated from information provided in the business requirements module, the central data store or the like or a user may manually enter responses. In instances in which responses to the queries are auto-populated, the application profile section provides for editing the responses, as applicable. In addition, information/responses provided to the application profile sub-section 440 may subsequently be automatically imported to an infrastructure design document included in the infrastructure design module 130 (shown in
The primary product requirements sub-section 450 provides for various requirements associated with the primary product related to the technical project. The primary product requirement sub-section 450 may include one or more of web tier profile 452, application tier profile 454, database tier profile 456, mainframe tier profile 458, market data 462, integration tier profile 464 and any other tier profile 466. Each of the profiles 450-466 provide for a listing of related queries and a response entry field for responding to the queries. If the any of profiles are deemed by the user to be not applicable, the profile may be collapsed and a text box provided to input a reason for non-applicability. In addition, each of the tier profiles provide for queries to be application specific, based on the applications listed/identified in the application profile sub-section 440. For example, if five applications are listed in the application profile sub-section 440, each of the tier profiles 452-462 may include up to five different sets of queries, wherein each set of queries applies to an application/software.
Each of the queries in the tier profiles provide for a related response entry field. The response entry field, provides for a user to manually enter responses or for the response to automatically pre-populated based on data in the business requirements module or the centralized data store. In instances, in which the responses are pre-populated, the responses may be edited by the user, as need be. In addition, the response field may be limited to yes/no replies or a text entry field. Additionally, a yes response entry field, or in some instances a no response entry field may provide for a text box entry field for the purpose of further elaboration. In addition, information/responses provided to the primary product requirements sub-section 450 may subsequently be automatically imported to an infrastructure design document included in the infrastructure design module 130 (shown in
The web/presentation tier profile 452 includes a listing of queries related to web/presentations needed for the technical project. The application tier profile 454 includes a listing of queries related to application/software needed for the technical project. The web/presentation and the application/software queries may include, but are not limited to, pre-existing applications, hardware/server requirements, operating system requirements, security requirements and the like.
The database tier profile 456 includes a listing of queries related to database(s) needed for the technical project. Database queries may include, but are not limited to, pre-existing databases, hardware/server requirements, operating system requirements, hosting requirements, data replication requirements, database availability requirements, database transaction profile, third party application hosting requirements and the like. The mainframe tier profile 458 includes a listing of queries related to mainframe needs for the technical project. Mainframe queries may include, but are not limited to, mainframe components, impacted entities, volume changes, batch volume run plans, time sensitive batch cycles involved monitoring requirements, and the like.
The market data 462 includes a listing of queries related to the market for the primary product affected by the technical project. The market queries may include, but are not limited to, market data feed needs, pre-existing market data feeds, specific market data application requirements and the like. The integration tier profile 464 includes a listing of queries related to the integration of the technical project with other systems, such as messaging services/systems, business-to-business systems, and the like. The interface queries may include, but are not limited to, application requirements related to the integrated system, security requirements, high availability requirements, monitoring requirements, synchronization concerns, messaging-specific queries and the like.
The other tier profile 466 includes a listing of queries related to any other facet of the primary product, such as reporting, document management and the like. The other queries may include, but are not limited to, existing applications, hardware requirements, operating system/software requirements, security requirements, reporting requirements and the like.
Technical project requirements section 420 include hardware requirements sub-section 460 that includes a listing of queries related to project hardware requirements and an associated response entry field. The response entry field may be a yes/no selection, a check box or a text entry field. The hardware queries may include, but are not limited to, pre-existing hardware, hardware environment requirements, contingency hardware requirements, application fallover plans, service levels required, available surplus hardware and the like.
Storage requirements sub-section 470 includes a listing of queries related to project storage requirements and an associated response entry field. The response entry field may be a yes/no selection, a check box or a text entry field. The hardware queries may include, but are not limited to, type of storage requirements, sixe of existing storage, growth rate of existing storage and the like. Data retention requirements sub-section 480 includes a listing of queries related to project storage requirements and an associated response entry field. The response entry field may be a yes/no selection, a text entry field or the like. The data retention queries may include, but are not limited to, date retention requirements, data retention policies and the like.
Security requirements sub-section 490 includes a listing of queries related to security requirements and an associated response entry field. The response entry field may be a yes/no selection, a text entry field or the like. The data retention queries may include, but are not limited to, classification of application data, classification of transmitted data, data encryption requirements, external network communication requirements, firewall requirements and the like. High availability requirements sub-section 500 includes a listing of queries related to the need employ high availability hardware in the technical project and an associated response entry field. The high availability queries may include, but are not limited to, high availability server use, server load balancing requirements and the like. Encryption requirements sub-section 510 includes a listing of queries related to encryption requirements for the project. The encryption queries The data retention queries may include, but are not limited to, encryption application tiers, Secure Socket Layer (SSL) requirements and tiers to which it applies, database encryption requirements and the like.
Authentication requirements sub-section 520 includes a listing of queries related to authentication requirements and an associated response entry field. The response entry field may be a yes/no selection, a text entry field or the like. The authentication queries may include, but are not limited to, authentication and authorization requirements, role based security requirements, unique authentication requirements, service identification requirements, digital certificate requirements and the like. Operations and monitoring requirements sub-section 530 includes a listing of queries related to operations and monitoring requirements of the technical project. The response entry field may be a yes/no selection, a text entry field or the like. The operations and monitoring queries may include, but are not limited to, production run hours, component monitoring requirements, external monitoring requirements, customer use monitoring/survey requirements, fallover, resiliency and/or reconnect logic use and testing and the like.
Business volume requirements sub-section 540 includes a listing of queries related to business volume associated with the technical project. The response entry field may be a yes/no selection, a text entry field or the like. The business volume queries may include, but are not limited to, capacity planning requirements, relative annual growth attributed to project, total number of transactions per time period, season peak information, similar workloads in other projects, is a capacity increase request required, expected number of users, peak transaction rate and the like. Facilities requirements sub-section 550 includes a listing of queries related to facilities affected by the technical project. The facilities queries may include, but are not limited to, data center location requirements, potential data centers in containment, and the like.
Interfaces requirements sub-section 560 includes a listing of queries related to interface requirements for the project. The interface queries may include, but are not limited to, type of interface, input/output to project, internal/external interface, interface description, frequency of use, supported protocol, average and peak transaction volume interface format, and the like. Voice requirements sub-section 570 includes a listing of queries related to voice/telephony requirements for the technical project. The voice queries may include, but are not limited to, voice requirements, call center requirements, call volumes, data retention period, call statistics requirements, telephony requirements, and the like. Throughput tables 580 include a listing of queries related to throughput tables for the technical project.
Thus, as described herein, present embodiments provide for methods, systems, and computer program products that provide for managing a technical project. In particular, embodiments of the invention provide for an end-to-end project delivery tool that includes planning, defining the requirements, designing, building, approving and providing communication/reporting of the technical project. The technical project management delivery tool herein described automates the capture of data and other functionality, such as identification of technical requirements and the like, to add increased efficiency as it relates to the design and build phases of a technical project. In addition, the project management delivery tool herein described improves hand-offs and communication amongst different disparate entities of a technical project.
While the foregoing disclosure discusses illustrative embodiments, it should be noted that various changes and modifications could be made herein without departing from the scope of the described aspects and/or embodiments as defined by the appended claims. Furthermore, although elements of the described aspects and/or embodiments may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Additionally, all or a portion of any embodiment may be utilized with all or a portion of any other embodiment, unless stated otherwise.
While certain exemplary embodiments have been described and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive on the broad invention, and that this invention not be limited to the specific constructions and arrangements shown and described, since various other changes, combinations, omissions, modifications and substitutions, in addition to those set forth in the above paragraphs are possible. Those skilled in the art will appreciate that various adaptations and modifications of the just described embodiments can be configured without departing from the scope and spirit of the invention. Therefore, it is to be understood that, within the scope of the appended claims, the invention may be practiced other than as specifically described herein.
The present invention is a continuation of U.S. patent application Ser. No. 12/618,245, entitled, “Defining Technical Requirements in a Technical Project Management System,” filed on Nov. 13, 2009, the application being assigned to the assignee of the present application.
Number | Date | Country | |
---|---|---|---|
Parent | 12618245 | Nov 2009 | US |
Child | 14537481 | US |