Software project Management (CMMI Maturity) Practice--Decision analysis (1)

Source: Internet
Author: User
Tags xform apache tomcat

The purpose of decision analysis and resolution (decision Analytics and Resolution, DAR) is to use the formal assessment process to assess the various options identified, based on established guidelines, to analyze possible decisions and determine the best solution. The formal decision-making process reduces the subjectivity of decision making and improves the scientific decision-making.

In the process of project implementation, the selection of technical options is often a more anxious process, need to meet the needs, technical advance, maturity, cost, manpower, time and other aspects of balance, and these programs are project stakeholders and project team members in the brainstorming session, through rapid interaction, Stimulate the creation of innovative alternative technology solutions. Each scenario has meaning, or, most of the solutions can solve the problem, but the goal coherence of the latitude such as cost, time and manpower needs to be measured uniformly.

Therefore, the people who put forward the proposal, will think their plan is better, so the contradiction arises, need a set of decision-making analysis management process to decide which program to choose.

In the design stage of the project, the technical staff put forward multiple sets of alternative front-end development technology solutions, for such decision-making analysis, on the face of selective decision-making, and through in-depth analysis, found implicit multiple technology portfolio structure decision-making, in order to speed up the decision-making progress, seize the core, a number of technologies cured, This decision analysis practice is described below.

1, the system of the overall technical solution introduction

In order to meet the challenges of system technology and business reform faced by enterprises, we should build the PAAs Office capability platform beyond the traditional PAAs category, strengthen the business capability and technical capability components, and form a more targeted "thick PAAs" platform. Through this platform, we can unify the technical framework, unify process management, improve data consistency, improve resource utilization, improve service and technology standardization, and simplify the development and operation of upper-level applications.

The target architecture is divided into four tiers according to the Cloud Design: Outsourcing resource (IaaS) layer, business Operation PAAs Platform layer, software service layer, and composite application layer. Eventually unified access through the portal.

(1) External resource layer: The target architecture is built on the Enterprise virtualization resource pool, which provides the device resource (virtual machine) and the Oracle, MySQL and MONGODB database deployed by the virtual resource pool.

(2) Business Operation PAAs Platform layer: the Base platform layer adopts OpenText Cordys BOP4 platform, which is the enterprise internal Office system cloud computing PAAs platform, providing unified development, operation and maintenance services for enterprise informatization, and can provide document service, reporting service, approval single frame service, Task services (which are services associated with cloud portal unification), master Data Services, process services, form services, user organization services, monitoring services, interface services, document services, etc.

Note: These services are localized based on native services, but do not transform the product itself, and special personalization still uses native services. The system architecture is based on the traditional PAAs platform, providing professional PAAs services close to the business: business capability components and technical capability components.

(3) Software service layer: On the PAAs platform, the development of software services, in the application of service design, reasonable split into easy combination of software Component Services, the use of adaptation technology to meet the rapid development, implementation of the demand. The overall planning of the official document management, general office, process management, operation and maintenance management of the four major parts. Refer to the tenant model for deployment by provincial companies, municipalities, virtual organizations, and application patterns. Service middleware uses Cordys, Apache HTTP, Java EE (Tomcat/jboss).

(4) Composite application: is to show the user interface, according to the target application of composite software Components services, respectively, for different users to provide different display interface. Interface technology can be used Cordys XForm, HTML/HTML5, JavaScript, JSP and so on.


2. Project key Information 2.1, background

User Selection BPM products are Cordys, and users have been using Cordys products for more than 5 years. Java EE technology is not used in the implementation of the original technology, the Web service uses the Cordys product itself integrated Apache Http, the front-end development technology belongs to the rich client Web2.0.

In previous years, we have optimized the front-end development technology of the original system in order to overcome the problem of rich client technology for terminal equipment requirements, innovative use of lightweight technology to achieve a smooth, stable operating system on low-profile terminals and servers, the main technology used are:

(1) In the rich Client (XForm) technology framework, embedded in the HTML lightweight interface, improve the low-profile terminal application performance, and beautify the interface;

(2) Merging the SOAP request (Web Service) of the operation interface, reducing the amount of data interaction and transmission, reducing the pressure on the network bandwidth, and reducing the pressure of the terminal network;

(3) database partition optimization, avoid the stored hot disk, but also the database SQL optimization, and data decoupling.

Today's solution is to upgrade BPM products, not only to provide process services, but also to be used as a PAAs platform. The user's goal is to support the enterprise process reengineering by creating a new process management platform, supporting the rapid implementation of the business, and providing better process monitoring and auditing capabilities.

2.2. Key information of project implementation plan

As the project needs are partially clear, according to the Project Quantification Management (CMMI High Maturity) model, it is recommended that this project adopt incremental development model. Key information for the project implementation plan is as follows:

(1) Development period of 5 months;

(2) The investment budget is 120 people months;

(3) The existing development manpower and mastering the technical situation (except the project manager and the requirement, the test personnel), the plan organizes into 22 people project team.


(4) Technology maturity, Cordys and Java EE platform are more mature;

(5) Technical risk:

      • Cordys platform has factory on-site technical support;
      • No high concurrency cluster implementation experience on Java EE platform.


2.3, the front-end development technology solution selection ideas

As a project manager, expect the project to be implemented as planned, and therefore strictly control the project objectives. To achieve the goal of effective control, at this time encountered the front-end development of technical solutions to choose the problem. My request is to use the most concise solution, the cost and time to spend the least, to meet user requirements is a good solution.

In fact, the goal of achieving, or some of the ideas can be followed, but also the previous project lessons learned and technological progress of the gifted, such as:

(1) Decoupling: business, data decoupling, that is, in the future after the completion of the system, if there are modifications or new requirements, in most cases is operational, and cost less, does not affect the existing business and data, therefore, the recommendation system using SOA technology, as well as component and adaptation technology;

(2) The use of restful specification (data transmission in JSON format), is for the SOAP XML protocol, so as to reduce the network data transmission, reduce the client to resolve the data pressure, but also reduce the server data port throughput;

(3) The ability to use the Cordys platform as reasonably as possible;

(4) The choice of high-tech maturity of the program, developers will use or easy to master the technology;

(5) The main members of the project team need to agree.

The form of business processing, that is, the front-end technology architecture level of multi-layered architecture, but also to meet the operators flexible configuration, modular structure, as shown in.


The first layer for the interface presentation layer, is the business data input, display of the terminal interface, for the traditional view;

The second layer is the business logic processing layer, which is used for the component assembly business;

The third layer is the data adaptation layer, which is used for form data input and output to correspond with the data item definition;

The fourth layer is for the data operation processing model layer, for the traditional model, and the model and the view of the corresponding is through the multi-layer configuration adaptation transformation, that is, the traditional modeling dependency relationship is not applicable in this framework.


3. Decision Analysis

3.1. List of candidate programs

(1) HTML

The front-end uses HTML+JAVASCRIPT+CSS development technology and Apache HTTP server, backend service for Cordys BOP 4 platform, to provide service components;

Advantages: Do not rely on Java EE container, directly using Cordys integrated Apache HTTP service, System integration architecture is relatively concise, have implementation experience;

Disadvantage: lack of available open source frameworks, low development efficiency, and lack of javascript developers.

(2) JSP

The front-end uses html+javascript+css+jsp development technology to develop independently with Apache Tomcat + HTTP server, backend service for Cordys BOP 4 platform, to provide service components;

Advantages: Out-of-the-box open source framework, can greatly improve the development efficiency, and JSP development of human resources is rich, reduce the reliance on Cordys platform;

Disadvantage: System relies on Java EE container, need to integrate with Cordys platform, lack of implementation experience based on Java EE Environment High concurrency application.

(3) xform+html

Fully based on the Cordys BOP 4 platform, a small front-end interface with HTML+JAVASCRIPT+CSS Development technology and Apache HTTP server;

Advantages: Similar to Candidate scheme (1), and can make full use of Cordys platform integration function;

Disadvantage: Lack of cordys developers, low development efficiency with HTML parts, lack of JavaScript developers, and the part of the features developed using xform may have terminal performance issues.

To sum up, the 3 candidates are difficult to choose, so a decision analysis plan, based on CMMI Maturity Model, decision Analysis Technology Architecture selection Scheme.

3.2. Decision Analysis Plan



Note: The evaluation method uses Delphi method.


3.3. List of evaluation criteria


Evaluation criteria selection, first of all, according to the five processes of project management and nine areas of knowledge, and then based on software engineering to choose, where the evaluation criteria selected is based on the company CMMI Maturity Model.

(1) Meet the Needs

Demand has business needs, there are software requirements, the reason to meet the demand in the first place, is because of the requirements of the software requirements: one is the terminal performance requirements, the second is the interface aesthetic requirements, the third is to provide rapid development capacity requirements (including operation and maintenance support capacity).

(2) Investment cost

Investment costs in the concrete embodiment of the development efficiency, human input to reflect. The scoring criteria are: development efficiency and related personnel level, that is, low-level technical staff development efficiency is high, investment costs can be high score.

(3) Mature and reliable technology

Technically mature and reliable refers to the use of widely used technology, system stability (rarely crashes), the industry has a successful case, the company has successfully implemented high scores of cases.

(4) Technical risk

Technical risk is mainly to consider whether there are manufacturers technical support, the emergence of technical problems can quickly solve high scores.

(5) Human Resources

Human resources refers to the technology used, the company can provide adequate resources, or through other channels of cooperation to obtain adequate resources.


Based on the above preparation, next week for decision analysis and evaluation, after the completion of the assessment, I will share the results. There are shortcomings, welcome to share, feedback.


Reference:

(1) Management Support Office System Technical framework selection and related technology application scope and method Analysis April 2014 Sho Yongwei

(2) Management Support Office System Technical Framework Selection comparison discussion (Java EE vs. Soa) April 2014 Sho Yongwei

Software project Management (CMMI Maturity) Practice--Decision analysis (1)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.