Technology Project Plan

Monday, March 22, 2010

Technology Project Plan   

This plan will provide a foundation to enhance an ordering process through an EDI technology for my company (a lightning company) that will received orders from big national chains such as Home Depot and Wal-Mart.  The idea to selecting this method is because customers order thousands of products every day, and having sales personnel to execute the orders will require extra office space, salary, logistic coordination and resources that the company does not have at this moment.

Software and Hardware Recommendations

The application will require Visual Studio 2008 and Visual Basic .Net for standard development tool.  The selection of this tool is based on popular used among developers and its friendly interface.  If you compare this application with C# the performance is similar, they shared almost the same structured and both generate a compiled code.  The application type selected is going to be Web Services for acting like a gateway.  Web Service with Soap envelope will be use for validation purpose.  Web services are becoming a standard to exchange information between two systems that probably are running in different languages and platforms.  This method of interchanging information and X12 are becoming a standard in the industry.  The application will require a Microsoft Biz Talk server to handle all EDI Data, this server is optimized to receive and send EDI data to their respective authenticate users.  The consideration to use this server is because the mapping of the information to legible format could be tedious; however this application is designed with this feature in mind and will be a tremendous help when speeding the developer process.  This computer will required Windows 2008 Server Edition for Operating System and a rack PowerEdge R710 from Dell with two processor and four (4) GB of memory.  The four GBs are requirements is based on that Biz Talk server only supports two (2) GB and the extra two for facilitating a better performance to the operating system (OS).  Also two additional servers will be required for hosting the order status website.  The server should have the same features mentioned before. All this technology is based on Microsoft software and should be the only indelible fact to select a platform with respect to other.  Finally, a Microsoft SQL server will be needed to store all transactions, including logging information and signing to the website.  This server will required double the memory for better performance and raid features to ensure the safety of the data.

Roles of Databases, Programming, and Networks

1. Databases:  It is important to design an application taking in consideration that the database is really necessary for performing orders and checking status.  The database executes a central function because all the transactions are going to be stored, read and updated into it dominion.  In an ordering process the most challenge factor should be how to lock a quantity when multiple orders are hitting the server at the same time, then a queue process should be implemented to attend customer needs based on first in, first out (FIFO).  It is essential to perform a time check to be sure who the first costumer in the list is.
2. Programming: The developer has to synchronize the Biz Talk Server and with code changes create software that satisfies customer requirement.  Custom code will be necessary to enhance performance and guarantee that all requirements are met.  The web site will use Teleriks RadControls for ASP.NET AJAX.  These libraries will entail extra time to learn; but the documentation is excellent and comes with numerous examples to make easier for developer to digest.
3. Network: The application will interact with local users and external ones.  It is necessary to make all essential changes into the firewall to accommodate remote access for outside users. Also is fundamental to have a fast intranet structure to handle strong TCP/IP traffic. The network will act like a filter to the remote users and a fast gateway to internal users.  There is no need for extra bandwidth; the company’s T3 should be enough to handle the incoming traffic.  All new servers should be configured to be part of the domain.

Explain how use cases aid in the systems analysis and design process

Use cases represent a requirement, with detailed information, multiple action paths that show which path is being followed now and which could derivate from its original one, also call negative paths.  On the analysis phase, use cases, will be represent the current systems (as is systems), how the information flows from its beginning to the final destination.  It is mandatory to know how the current system works, to be able to enhance with new features.  On the design phase (should be), use cases will be alter to apply scientific knowledge and to increase its efficiency; they will also broke down into small pieces to expose any intrinsic or aggregate concept that could be lost for Business Analyst.   Uses cases will be categorized to create business rules and form basic groups of requirements that are needed to successfully complete the systems.  The only limitation they could have in the event that requirements are wrong, not properly defined, or misinterpreted based vague information, then the uses cases will not represent an essential entity and basic component of the design; they will be useless and updating the requirements and use cases will be necessary to keep the project into the correct path.

Explain how internal and external stakeholders will be affected by your solution

Stakeholders provide value knowledge to the project and the direct involvement to the project could result extremely time consuming.  Even if all the requirements are perfect, the verification process needs to be performed, as well as meetings, and sign off events.    Internal stakeholder need to adapt to new solution, verify that all requirements are met and reflect the initial expectation of the project. On the other hand external stakeholders need to acknowledge what are the different obstacles that could occur and could delay the implementation of the project.  For example, it is difficult to synchronize an EDI order entry system; therefore the communication needs to be strong in order to exchange accurate and precise information between teams.  There could be challenge implementing VPN tunnel and extra meetings might be needed in order to keep the project under control; any simple unbalance could trigger a domino effect into the project and more time will be necessary; extra time means less productivity and other activities will be deprived of the attention of the stakeholders.

Evaluate both the business risks and security risks of your proposed solution and explain how you plan to mitigate them.

 “Risk is a measure of the probability and consequence of not achieving a defined project goal” (Harold Kerzner,  p. 709, 2006).  There is always a possibility that a developer drops out of the project by quitting, or getting sick, or when a member of their family suddenly dies; then the projected date of delivery could be alter because the not counting success.  When this happens mitigation plan should be enabled immediately to recover the project from the possibility of failing.  A solution could be reassigning another developer from a different team to continue where the previous developer drop off; if that solution is not possible, the project manager should consider in hiring a temporal developer to complete the remaining tasks of the project.

Financial plan

The project budget for this application is approximately $230,000.  This amount includes buying new Biz Talk software enterprise version ($30,000), setup a section server with the back units for order status web and SQL Server ($20,000). Developer training for Biz Server and RadControls for ASP.NET AJAX from Telerik (Presentation layer) ($10,000).  Three fulltime developers for a period of 6 months ($90,000), Project Manager ($20, 000), Business Analyst (BA), Database Manager (DBA) ($12,000) and a Quality Assurance analyst (QA) ($15,000).  The rest of the money will be a reserved in cases any eventuality occurs and extra money is needed.
Identify metrics you plan to use to measure the performance, or outcomes, of your

Technology Project Plan

Basically every task will be attached into a general calendar; in other words, tasks need to be completed by certain dates.  If the task is not completed by the previous definition, means that the project is not a perfect track to reach successfully its goal and action is needed to correct the inconsistency.  Another way to determinate if the project is in correct path is to analyze the list of errors from QA.  When the development phase is completed, code should be deliver for QA validation and to verify that the requirements are met; at that time if the number of errors super pass the numbers of task left, a correction action should be to implement immediately; it is possible that extra resources are need to not be behind in schedule.

Conclusion


Starting a project is always a mystery, because you never know how events are going unfold.  That level of uncertainty cannot be measured by a detail project plan; but the project manager can define how is executed by the main actors of the project.  Each individual has a responsibility and has to perform its job based on their experience in order to keep the project running.  The main function of the project manager is to keep the project going, keep delays to a minimum, and trying to improve the communication between the different actors of the project.  It is difficult to control a project when the project manager has not expertise or knowledge of the overall concept of the project; however, the project manager carries a never before mentioned responsibility and this is: learn about the new process which being developed.   Revising the requirements, validating that prerequisites tasks are completed before the project continues, and be trapped inside the budget are the daily routine in this business of managing projects.
 For a project plan to be successful, a collaborative environment must exist between all participants; this atmosphere should be delimited since the begging of the project to make sure that everyone understand his/her role in the project and what are the procedures in place, and in case that a miscommunication occurs to alleviate the situation in a professional way.  It is important that everyone use the appropriate channel of communication and keep a well educated status when they are referring to other team members to avoid friction.

References
Harold Kerzner. (2006). Project Management. A System Approach to Planning, Scheduling and Control., (pg. 709). Retrieved March 22, 2010.
.