huge boobs pictures hd. 3gp desi glamcore perfect goddesses in oral.

https://eporner.monster destiny blonde has a sweet teen pussy.

Kỹ thuật

Tạo Module DNN

04-09-2008 11:31:48Một vài khái niệm để thông suốt phát triển module dotnetnuke có nghĩa là làm cái gì như thế nào, kết quả ra sao ? Túm lại đơn giản là thế này :

– Dotnetnuke là 1 cổng thông tin portal.
– Các yếu tố cơ bản của portal (cổng thông tin)
+ website & website con
+ các trang (pages) trên wwebsite
+ Các vùng (trên 1 trang) gọi là Pane
+ Các porlet (chứa nội dung thông tin)

04-09-2008 11:44:06porlet : nôm na nó là một hình vuông trên website chứa nội dung thông tin, nhiều hình vuông (porlet) ghép lại chúng ta có 1 trang web (web page), không biết định nghĩa webpage là cái gì nữa chỉ hy vọng là anh em đều hiểu khái niệm cơ bản webpage.Các website thông dụng tại việt nam có 3 khối thông tin, menu bên trái, nội dung chính ở giữa và bên phải là quảng cáo, đối tác … 3 khối thông tin trên được khái quát thành 3 Pane (vùng). Như vậy chúng ta có khái niệm vùng (Pane = hoặc region thì cũng thế), trên 1 vùng có thể chứa n Porlet.Các vùng có nội dùng ghép lại thì chúng ta có webpage : tương đương với khái niệm page trong dotnetnuke.Nhiều page ghép lại với nhau thì thành 1 website. Tuy nhiên cũng phải nói thêm, khái niệm page trên DNN rộng hơn nhiều.

Ví dụ

http://thienan.vn/tintuc/tabid/55/id/6/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/8/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/16/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/19/Default.aspx

http://thienan.vn/tintuc/tabid/55/id/20/Default.aspx

là 1 page có PageID=55.
Trong Page này, porlet chính giữa hiển thị nội dung = cách đọc trong CSDL tin tức có mã 6, 8, 16, 19, 20 …

Vì các porlet có cái load động theo URL, có cái load tĩnh nên nhu cầu cần có settings cho mỗi porlet. Settings là gì ? là phần cho phép người dùng chỉ định cách thức hiển thị thông tin cho mỗi porlet.

Quay lại với Page, chúng ta có thể thấy khái niệm Page trong DNN đơn giản là cái khung các Pane bố trí ra sao, trên mỗi Pane đó các porlet đặt và hiển thị nội dung thế nào -> Page là khung cho các vùng (Pane, Region)

Coding for food

04-09-2008 11:50:49YAHOOMSNNhìn 2 hình bên trên của Yahoo và MSN, chúng ta có thể thấy các miếng vuông rất giống nhau, mỗi miếng vuông đó là 1 porlet, bao bên ngoài mỗi porlet là 1 container.

Như vậy có thể thấy container là cái chỉ dùng để làm đẹp, nó giúp các porlet của website được trình bày một cách thống nhất. Cái Container này không phải lập trình, DNN đã làm hộ. Chúng ta chỉ làm việc viết cách hiển thị cái nội dung bên trong các container, việc viết code hiển thị nội dung bên trong là việc viết module cho DNN.

Coding for food

05-09-2008 12:02:28Để viết code cho 1 module chúng ta nên biết cấu trúc module của DNN- 1 Module có n Definitions
– 1 Definition có n ControlsTrong 1 module có 2 Control đặc biệt, là các control có key = “” và key = “Settings”. Control key=(blank) thì chúng ta có thể thêm nó vào 1 Page. Control có key=Settings là phần thiết lập cho module.

1 Module như vậy có thể có nhiều Control cùng có key = blank, tuy nhiên khuyến cáo là chúng ta chỉ nên dùng 1.

Coding for food

05-09-2008 12:17:40Để gọi 1 usecontrol (tương đương với 1 file ascx) chúng ta viết chúng ta dùngDotNetNuke.Common.Globals.NavigateURL(PortalSettings.ActiveTab.TabID, “edit”, “mid/” + this.ModuleId.ToString());Chúng ta nên để ý rằng DNN có 2 chế độ chính, là chế độ frontend (trình diễn presentation) và backend (phần quản lý administration)

Câu lệnh trên cho phép chúng ta chui vào phần backend (quản lý), cho phép chúng ta gọi 1 control duy nhất là control có nhiệm vụ edit 1 tin tức.

Url cho phép chúng ta truy cập vào tầng frontend (tầng trình diễn)

http://thienan.vn/tintuc/tabid/55/id/19/Default.aspx

URL cho phép chúng ta vào backend (tầng quản lý)

http://localhost/Home/tabid/36/ctl/admin/mid/378/Default.aspx

chúng ta xem xét kỹ URL này

ctl/admin/mid/378/Default.aspx
=> ctl = “admin” (key) , mid = “378” (ModuleID)
=> truy cập vào module có mã 378 đọc ra usercontrol (file ascx) có key = “admin”

Như vậy có thể thấy backend và frontend khác nhau ở chỗ backend có phần …/ctl/xxx/mid/yyy…
tức là có giá trị của ctlmid

các key thông dụng cho quản lý tin tức

key = “news_edit” sửa 1 tin tức
key = “news_add” thêm mới 1 tin
key = “news_publish” cho phép 1 tin được đăng hay không
key = “news_delete” xoá 1 tin tức mới
key = “news_view” xem nội dung 1 tin

Thông thường “news_view” -> “” vì key = (blank) có nghĩa là chúng ta có thể thêm control này (porlet) vào frontend (thêm porlet vào trang – webpage trình diễn nội dung)

Coding for food

05-09-2008 12:24:48Các module được viết và đặt trong thư mục \Website\DesktopModulesĐể viết 1 control chúng ta khai báoC#
public partial class news_admin : DotNetNuke.Entities.Modules.PortalModuleBase

VB
Public Partial Class EditHtml
Inherits DotNetNuke.Entities.Modules.PortalModuleBase

Để phần này không lỗi module của bạn phải Reference đến file dotnetnuke.dll (còn reference là làm thế nào thì các bác tự tìm hiểu)

Hình này mà các bác nhìn còn không hiểu thì anh em bó tay rồi.

Coding for food

05-09-2008 12:30:53Trong phần setting chúng ta làm như sau :C#
public partial class news_list_settings : DotNetNuke.Entities.Modules.ModuleSettingsBaseVB
Partial Public Class Settings
Inherits DotNetNuke.Entities.Modules.ModuleSettingsBase

Trong ascx settings này chúng ta phải viết 2 hàm (bắt buộc)

VB
Public Overrides Sub LoadSettings()
C#
public override void LoadSettings()

C#
public override void UpdateSettings()
VB
Public Overrides Sub UpdateSettings()

Trong này để ghi vào CSDL chúng ta dùng

VB
Dim objModules As New DotNetNuke.Entities.Modules.ModuleController
Dim objModule As DotNetNuke.Entities.Modules.ModuleInfo = objModules.GetModule(ModuleId, TabId, False)

‘Update Tab Module Settings
objModules.UpdateModuleSetting(ModuleId, “TEXTHTML_ReplaceTokens”, rblstReplaceTokens.SelectedValue)

C#
DotNetNuke.Entities.Modules.ModuleController objModules = new DotNetNuke.Entities.Modules.ModuleController();
objModules.UpdateModuleSetting(ModuleId, “newsid”, newsid.ToString());
objModules.UpdateModuleSetting(ModuleId, “limits”, txtLimits.Text);

Đọc ra thì thế nào

C#
txtLimits.Text = ModuleSettings[“limits”].ToString();
VB
rblstReplaceTokens.SelectedValue = CType(ModuleSettings(“TEXTHTML_ReplaceTokens”), Byte)

Coding for food

05-09-2008 12:38:56Trong frontend (giao diện trình diễn) để lấy nội dung của setting chúng ta cũng dùngstring limits= Settings[“limits”].ToString();
Rồi hiển thị mọi thứ bình thường như code ASP.NET.Thông thường anh em chúng ta dùng repeater và các thứ Label, Datagridview … để hiển thị nội dung cần làm.

Để module chạy ngon, dll cần phải copy vào thư mục /dotnetnuke/bin/ còn làm thế nào thì anh em tự nghiên cứu nhá.

Tức là chúng ta sẽ có /dotnetnuke/bin/module.dll

Như vậy là đủ kiến thức để viết những module đầu tiên rồi, ví dụ module Hello world.

Để viết cần thực hiện

1/ tạo file ascx : hello.ascx
2/ tạo module = hello -> def = “hello” -> control key = blank control = hello.ascx
3/ dịch module Hello ra file hello.dll
4/ copy file hello.dll vào /dotnetnuke/bin/hello.dll
5/ chọn 1 page bất kỳ rồi add module hello vào trang đó.

Coding for food

15-09-2008 04:46:41Anh ơi, em có down mấy sách dotnetnuke về nhưng nó toàn tiếng anh, và cái phần viết module của người ta toàn thấy viết các thư viện phục vụ vào thư mục app_code… còn theo cách tiếp cận viết module của anh thì tạo ra một project sau đó biên dịch và cop vào, nhưng em vẫn mơ hồ quá, anh có thể hướng dẫn em một cách tiếp cận để viết module trên DNN, như cách viết cái CMS trên forum của mình ko a?Em cảm ơn anh trước nhé!

26-02-2009 02:59:47Anh ơi, em có down mấy sách dotnetnuke về nhưng nó toàn tiếng anh, và cái phần viết module của người ta toàn thấy viết các thư viện phục vụ vào thư mục app_code… còn theo cách tiếp cận viết module của anh thì tạo ra một project sau đó biên dịch và cop vào, nhưng em vẫn mơ hồ quá, anh có thể hướng dẫn em một cách tiếp cận để viết module trên DNN, như cách viết cái CMS trên forum của mình ko a?Em cảm ơn anh trước nhé!
Viết trong app_code thì mình code nhanh hơn do ko phải build, mỗi lần chạy chỉ việc nhân Ctrl+S là xong. Nhưng cách này không tiện vì không phân ra được các dll riêng rẽ cho mỗi Project.
Còn viết theo kiểu project thì build và chờ chạy hơi lâu nhưng dễ kiểm soát hơn vì mỗi project được build thành 1 dll trong \Bin

20-03-2009 05:19:31Nhân tiện vấn đề viết module như bạn nói ở trên có 2 trường hợp,Cho mình hỏi cái này nhé, mình mới sử dụng DotNetNuke lần đầu tiên và mình sử dụng DotNetNuke 5.00.00.
Mình thấy viết module và add Module theo hai cách trên đều không ổn, nếu viết module trong thư mục App_code thì đằng mình không tạo được ra dll do đó trong phần codeb2 của modle không debeg được(lỗi The breakpoint currently will not be hit) và còn viết code trên project riêng rẽ thì cũng add module được vì các module nó bắt phải đặt trong thư mục website\DesktopModules do đó nếu viết project riêng thì cũng không viết được,
Xin mọi người giúp đỡ nhé, ai có ý kiến gì không nhỉ?mình xin cám ơn nhiều.

20-03-2009 07:28:42Chỉ có 2 cách trên
Còn cách nào nữa đâu
Cả 2 cách đều debug được hết
Khi viết theo kiểu project thì bạn add existing website là local host trước và đặt làm start up project. Sau đó Add new project của mình vào
Với mỗi project của mình thì bạn cần chọn thư mục build của project nằm trong Bin của dnn là xong. Mỗi lần chạy ấn shift + f6 để dịch. Sau đó vào IE gõ địa chỉ localhost hoặc gì gì đó. Muốn debug thì f5

http://www.yhoctuxa.vn/

21-03-2009 03:31:08mình add module theo từng cách mà không được, bạn xem từng bước mình làm có gì sai không nhé mà sao mình không add được module.
Cài IIS (Internet information service)
– Cài visual studio 2005
– Cài 2 bản Patch (vá lỗi cho VS2005) theo đúng thứ tự
1/ VS80-KB915364-X86-ENU.exe
2/ WebApplicationProjectSetup.msi
– Cài đặt dotnetnuke 5.00.00 thành công
– Open website trên locallhost
đến bước này coi như là đã cài đặt thành công DNN 5.00.00 rồi và mình add thành công các module có sẵn trong DNN rồi.Cũng add thành công modulle vài lần nhưng sau đó laị không được
* Thằng DNN 5.00 này có cả module template nhưng trong diễn đàn không nói đến nên mình cũng không đề cập ở đây, còn Project mình add là Asp.Net Webplicationvà sau đây là trình tự các bước mình add module sau khi đã Open website DNN
Bước 1:
vào File -> Add -> New project
Chọn kiểu Project: Asp.Net Aplication
Tên: Hello
Location: “D:\Hung Thinh\Working Web\DesktopModules”

21-03-2009 03:45:42B2: Xoá file Default.aspx và file config trong Project HelloB3: Chọn đường dẫn Project Hello đặt vào thư mục bin trong Website DNN 5.00B4: Add Reference DotNetNuke.dll(chắc chắn chỉ cần thằng này là đủ)

B5: Add control vào Project Hello tên controll là Hello.ascx

B6: Buile Project Hello

=> Build thành công

Bước 7:F5 chạy website đăng nhập user Host thành công

Bước 8:Chọn Host -> Host Difinitions ->chọn Create new Module

Bước 9: Next vài lần Create new Module thành công

bước 10: Edit module vừa Creat New, thực hiện Add Difinition ,trỏ tới đường dẫn control source)

Bước 11: Quay ra trang chủ tạo một trang bất kỳ Add Module.

Trong combobox có tên module Hello hiện lên rồi nhưng khi add thì không thấy nằm lên trong trang

còn đây là toàn bộ codeB2 của control Helle

Imports DotNetNuke
Imports DotNetNuke.Services.Localization
Imports DotNetNuke.Security
Imports DotNetNuke.Security.Roles
Imports System.Collections.Generic

Partial Public Class Hello
Inherits DotNetNuke.Entities.Modules.ModuleSettingsBase
Implements Entities.Modules.IActionable

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

#Region “Optional Interfaces”

Public ReadOnly Property ModuleActions() As DotNetNuke.Entities.Modules.Actions.ModuleActionCollection Implements DotNetNuke.Entities.Modules.IActionable.ModuleActions
Get
Dim Actions As New Entities.Modules.Actions.ModuleActionCollection
Actions.Add(GetNextActionID, Localization.GetString(Entities.Modules.Actions.ModuleActionType.AddContent, LocalResourceFile), Entities.Modules.Actions.ModuleActionType.AddContent, “”, “”, EditUrl(), False, SecurityAccessLevel.Edit, True, False)
Return Actions
End Get
End Property

#End Region

End Class

Mình đã mất khá nhiều thời gian mà không tìm được ra lỗi này, bạn xem mình làm có thiếu cái gì không nhé, mình cảm ơn bạn nhiều

23-03-2009 09:24:59Bạn nhầm chỗ nayInherits DotNetNuke.Entities.Modules.ModuleSettingsBasePhải là

Inherits DotNetNuke.Entities.Modules.PortalModuleBase

Moi add duoc vao trang web

Con cai ModuleSettingsBase chi danh cho settings thôi

Với lại bạn viết code đơn giản thôi để còn thử.
File ascx

<%@ Control Language=”C#” AutoEventWireup=”true” CodeBehind=”hello.ascx.cs” Inherits=”helloworld.hello” %>
<asp:Label ID=”lblhello” runat=”server”></asp:Label>

File cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace helloworld
{
public partial class hello : DotNetNuke.Entities.Modules.PortalModuleBase
{
protected void Page_Load(object sender, EventArgs e)
{
lblhello.Text = “hello world”;
}
}
}

Nhớ thêm nữa là khi cài module thì phải đặt key trắng mới hiển thị trên webpage được

Chúc bạn vui vẻ

23-03-2009 11:58:39cám ơn bạn quanvd rất rất nhiều, nguyên nhân của mình là mình ko đặt key trắng, phải cám ơn bạn nhiều lắm đấy vì cái lỗi này chắc chẳng bao giờ mình tìm được ra.

02-04-2009 01:25:28Cho hỏi dnn hỗ trợ những hệ quản trị CSDL nào?

17-04-2009 02:21:08Chao moi nguoi .
Minh o tp HCM
Minh dang can 2 module DNN : quan ly tac vu & quan ly cong van (ngôn ngữ VB.NET và SQL Server)
Gia ca thuong luong.
Moi chi tiet xin lien he : 0938411399 gap Tam

18-04-2009 01:17:38Chao moi nguoi .
Minh o tp HCM
Minh dang can 2 module DNN : quan ly tac vu & quan ly cong van (ngôn ngữ VB.NET và SQL Server)
Gia ca thuong luong.
Moi chi tiet xin lien he : 0938411399 gap Tam
—Bọn mình ở Hà Nội. Không biết có hợp tác được không ?

http://coder.awas.vn
http://mobile.awas.vn
http://vtv.awas.vn
http://baihatviet.awas.vn

04-06-2009 02:40:41Mình làm thế này:
Cách đặt tên 1 module như sau: [Tencongty].[Tenmodule], vd: Comeco.CMS1. New 1 Project (Asp.Net Web Application), chọn đường dẫn lưu dự án tại ….\DesktopModules\CMS2. Vào properties of dự án vừa tạo để:
– set ngay nơi lưu cái dll sẽ biên dịch vào ……\Website\Bin
– Sửa tên Assembly thành [Tenconty].Modules.[Tenmodule], vd: Comeco.Modules.CMS

3. References tới 2 cái dll là: DotNetNuke.dll và Microsoft.ApplicationBlocks.Data.dll

4. Xóa 2 cái file default.aspx và web.config

Tiếp theo là tạo module dựa theo cách làm of DNN…

Cảm ơn bác aspnet, bác rất nhiệt tình!

Vài suy nghĩ về Chính phủ điện tử Việt nam (phần 2)

Vài suy nghĩ về Chính phủ điện tử Việt nam (phần 2)

(Bài đã đăng trên tạp chí Tin học & Đời sống 5/2012)

2- Kiến trúc, khung kiến trúc CPĐT.

CPĐT là một lĩnh vực mới bắt đầu phát triển từ cuối những năm 90 và hiện còn đang trong quá trình phát triển. Vì vậy có rất nhiều điều còn chưa rõ ràng, có nhiều cách hiểu, cách làm khác nhau. Dưới đây là vài ví dụ:

Khái niệm khung (framework) được hiểu khác nhau. Zachman định nghĩa khung 1 như một sơ đồ phân loại; TOGAF lại coi khung là “một phương pháp chi tiết và bộ công cụ hỗ trợ để phát triển một kiến trúc” 2, Roger Sessions coi khung kiến trúc “là một cấu trúc khung xương – skeleton structure” 3, kiến trúc FEA của Mỹ cũng được coi như một framework, v.v….

Ngay trong một loại khung kiến trúc, nội dung cũng khác nhau. Khung CPĐT của Uganda 4 có nội dung khá đơn giản, trong khi đó khung CPĐT của Mỹ 5 tương đối đầy đủ và phức tạp.

Trong CPĐT có nhiều loại khung: khung kiến trúc, khung pháp lý, khung kỹ thuật, khung tương hợp, v.v… Trong một khung lại có thể có các khung khác.

Vấn đề phức tạp, rối đến mức mà có chuyên gia phải viết cả một quyển sách “Làm thế nào để sống sót trong rừng rậm các khung kiến trúc” 6.

Vì vậy, mặc dù khung CPĐT do tư vấn nước ngoài xây dựng, nhưng về phía chúng ta cũng cần có những nghiên cứu nhất định để có thể ra đầu bài, hiểu, điều khiển và đánh giá, nghiệm thu được kết quả của tư vấn. Qua tham khảo một số công trình nghiên cứu trong nước, xin có vài đề xuất rút kinh nghiệm cho lần này.

Ý tưởng chung là đi vào một khu “rừng rậm” như đã dẫn ở trên, có nhiều góc nhìn khác nhau, nhiều phương pháp tiếp cận, nhiều loại công cụ. Cần chọn ra, tạo ra những cái của riêng mình, phù hợp với điều kiện đặc thủ của mình ngay trước khi bước vào khám phá nếu không muốn bị lâm vào tình trạng “chỉ thấy cây mà không thấy rừng”, hoặc bước vào rừng với hai bàn tay không, nhìn bằng con mắt người khác, phó mặc cho người dẫn dắt.

Dưới đây nêu lên vài điều cần lưu ý khi chọn phương pháp, công cụ “ đi rừng”, chưa bàn đến các vấn đề kỹ thuật cụ thể.

a) Chọn phương pháp luận để xây dựng khung CPĐT

Theo một nghiên cứu gần đây 7, khoảng 90% kiến trúc tổ chức (tạm dịch cụm từ enterprise architecture, mà kiến trúc CPĐT là một trường hợp riêng) được xây dựng dùng một trong 4 phương pháp luận (methodology) sau:

  • Khung kiến trúc Zachman (The Zachman Framework for Enterprise Architectures) 8: là một hệ thống phân loại (taxonomy), mô tả các thành phần kiến trúc phải có dưới góc nhìn khác nhau của những người liên quan. Nhưng có nhiều vấn đề quan trọng không được Zachman đề cập tới. Nó cũng không chỉ cách xây dựng một kiến trúc mới như thế nào.
  • Khung kiến trúc TOGAF (The Open Group Architectural Framework – TOGAF) 9: là một phương pháp (method) hướng dẫn chi tiết cách xây dựng một kiến trúc kèm theo các công cụ hỗ trợ, nhưng lại không chỉ cách làm thế nào xây dựng một kiến trúc tốt, cho nên kết quả có thể không như mong muốn.
  • Kiến trúc Chính phủ liên bang Mỹ (The Federal Enterprise Architecture – FEA) 10: không chỉ là 5 mô hình tham chiếu, mà còn có 4 tài liệu về phương pháp luận áp dụng và hướng dẫn từng bước. Vì vậy, FEA được xem là một phương pháp luận đầy đủ, kết hợp được cả hai phương pháp luận nói trên, có khung đánh giá kết quả. Mặc dù tên chính thức của nó là kiến trúc nhưng cũng được xem như một framework, kế thừa từ FEAF.
  • Phương pháp luận Gartner (The Gartner Methodology): Gartner là một công ty nghiên cứu và tư vấn về IT nổi tiếng 11. Phương pháp luận xây dựng kiến trúc của Gartner được đánh giá cao do uy tín và tay nghề (practise) của công ty 12 và do đó, phải do người của công ty thực hiện.

(Một nghiên cứu khác cho rằng hiện có 6 khung kiến trúc hàng đầu 13, nhưng điều đó chưa quan trọng ở đây).

Mỗi một phương pháp luận trên có ưu nhược điểm, điều kiện áp dụng riêng (và còn một số phương pháp khác 14). Việc lựa chọn một hoặc vài phương pháp hay tổ hợp các ưu điểm của nhiều phương pháp phù hợp với điều kiện nước ta phải là nội dung của một nghiên cứu riêng. Nhưng xét đến thực tế đội ngũ chuyên gia về kiến trúc tổng thể hiện nay, một trong những yêu cầu cần có là phương pháp luận phải có hướng dẫn áp dụng (method, guidance) rõ ràng, chi tiết và dễ hiểu.

Và điều quan trọng nữa, khi đã chọn phương pháp luận rồi phải theo đúng nó. Có những công trình nói là dựa vào TOGAF, FEA,… nhưng khi thực hiện chỉ dùng mỗi các mô hình tham chiếu là không đủ. Một ví dụ áp dụng pha sơ bộ của TOGAF vào CPĐT xem ở đây 15.

b) Chọn phương pháp để so sánh, đánh giá khung CPĐT

Khi đã có phương pháp luận, bước tiếp theo là so sánh, đánh giá một số khung CPĐT của các nước để rút kinh nghiệm và chọn ra một số mẫu. Nếu chỉ đơn thuần là liệt kê, mô tả kinh nghiệm các nước thì không đủ. Cần phải có phương pháp, tiêu chí để so sánh, đánh gíá khung CPĐT.

Mặt khác, xây dựng được một khung CPĐT rồi, làm sao biết nó tốt hay xấu để nghiệm thu? Cũng cần có phương pháp, tiêu chí thậm chí thang điểm theo yêu cầu đặt ra ban đầu.

Đã có một số công trình nghiên cứu về vấn đề này. Ví dụ: Roger Sessions 16 đưa ra nhiều tiêu chí để chấm điểm; Kostovska et al 17 đề xuất hẳn một phương pháp luận để đánh giá, v.v… Bộ Tài chính Phần lan có đưa ra một khung đánh giá hoạt động xây dựng CPĐT, mặc dù chưa đủ chi tiết theo nhu cầu của chúng ta, nhưng cũng đáng tham khảo 18

Phương pháp đánh giá khung CPĐT không đơn thuần chỉ là về mặt kỹ thuật. Nó phải thể hiện được đặc điểm cụ thể của quốc gia trong quá trình xây dựng CPĐT, thể hiện những trọng tâm cần nhấn mạnh và những mục tiêu đầu bài đặt ra cho việc xây dựng khung CPĐT. Ví dụ: nếu coi trọng cải cách hành chính hướng CPĐT thì phần mô hình nghiệp vụ phải được cho điểm số cao, nếu hướng tới phân quyền mạnh thì tính tương hợp phải được ưu tiên hàng đầu, v.v….. Các công cụ nói trên (phương pháp, tiêu chí, thang điểm hay khung) không phải là cố định, có thể tùy biến, sửa đổi, kết hợp để tạo nên một công cụ phù hợp với nhu cầu riêng.

Sau bước đánh giá, lựa chọn một cách có phương pháp như trên phải chỉ ra được cái khung ta cần có hình hài như thế nào, có những nội dung gì, chi tiết đến đâu, các mẫu đã chọn là gì và quan trọng nhất là tại sao lại quy định, chọn như vậy.

Tóm lại, đây cũng là vấn đề cần quan tâm và giải quyết trước khi bắt tay vào xây dựng khung CPĐT và là cơ sở để nghiệm thu.

c) Tính tương hợp và kiến trúc CPĐT

Ngay cả khi chưa có kiến trúc, một yêu cầu sống còn là các hệ thống ICT phải có tính tương hợp (interoperability) về mặt kỹ thuật: trao đổi thông suốt được dữ liệu với nhau và sử dụng được dữ liệu đó. Để đảm bảo tính tương hợp ở cấp độ này, các chính phủ thường ban hành một bộ chuẩn kỹ thuật hoặc khung tương hợp (interoperability frameworks) mà các hệ thống ICT nên hoặc phải tuân thủ.

Tuy nhiên theo nghĩa rộng của tính tương hợp: các cơ quan chính phủ làm việc được với nhau qua CPĐT 19 thì tương hợp kỹ thuật như nói trên là không đủ, CPĐT phải được xây dựng trên một kiến trúc chung 20, 21. Vì vậy có 3 cách để đảm bảo tính tương hợp: a/ Xây dựng đồng thời bộ chuẩn tương hợp và kiến trúc CPĐT 22, b/Xây dựng khung và/hoặc kiến trúc CPĐT trong đó một trong những nguyên tắc là đảm bảo tính tương hợp 23, tức là lồng ghép khung tương hợp vào nội dung kiến trúc hoặc c/Chia làm 2 giai đoạn: đầu tiên ban hành khung tương hợp (hoặc bộ chuẩn kỹ thuật), sau đó mới ban hành kiến trúc CPĐT 24.

Với đặc điểm tình hình cụ thể của Việt nam, cách thứ ba có vẻ hợp lý, kịp thời và khả thi hơn. Trong khi chờ đợi xây dựng và áp dụng khung và/hoặc kiến trúc CPĐT, cần có ngay một bộ chuẩn kỹ thuật tương hợp để tránh những phức tạp, tốn kém sau này. Đó là điều mà các quyết định và thông tư số 20/2008/QĐ-BTTTT, 01/2011/TT-BTTTT đã làm và cần tiếp tục hoàn thiện.

Nay đến giai đoạn xây dựng khung CPĐT, cần chú ý đưa việc đảm bảo tính tương hợp theo cách a/ hoặc b/ ở trên.

d) Chọn công cụ kiến trúc

Vấn đề này tuy không vĩ mô như những cái đã bàn ở trên, nhưng lại rất quan trọng nếu muốn áp dụng kiến trúc thành công. Một kiến trúc cụ thể được xây dựng và áp dụng có liên quan đến các yếu tố: a/Kế thừa kiến trúc cấp trên, b/Sử dụng lại những phần có thể của các kiến trúc ngang cấp, c/Chia sẻ các phần có thể dùng chung cho các đơn vị khác, d/Sửa đổi, cập nhật liên tục theo quá trình phát triển, e/ Truyền đạt xuống các cấp dưới để triển khai tiếp, áp dụng vào các sản phẩm cụ thể, f/ Nhiều người, nhiều bộ phận tham gia xây dựng, xét duyệt, triển khai dưới nhiều góc nhìn khác nhau v.v…

Tất cả những điều đó không thể thực hiện được nếu không có một ngôn ngữ chung và các công cụ phù hợp được thống nhất trong toàn hệ thống. Tương tự như ngôn ngữ bản vẽ kỹ thuật và các phần mềm thiết kế trong kiến trúc xây dựng, có hai vấn đề dưới đây nên được chỉ rõ và thống nhất sử dụng:

1- Ngôn ngữ mô hình kiến trúc ( enterprise architecture modeling language )

Một kiến trúc có rất nhiều đối tượng quan tâm (stackeholders) dưới nhiều góc nhìn (viewpoint) khác nhau và gồm nhiều loại mô hình khác nhau. Để các đối tượng đó có thể hiểu, thông tin với nhau, cần có ngôn ngữ chung.

Hiện nay, chưa có một ngôn ngữ duy nhất cho kiến trúc tổng thể (enterprise architecture) nói chung và kiến trúc CPĐT nói riêng 25. Vì vậy một bộ các ngôn ngữ phù hợp với từng lĩnh vực kiến trúc CPĐT (ArchiMate, BPMN, UML,…) nên được chọn và quy định thống nhất trong toàn hệ thống.

Sau khi đã quy định, ví dụ mô tả các quy trình nghiệp vụ bằng BPMN, các đoạn văn mô tả dài lê thê, các sơ đồ vẽ tùy ý mỗi nơi một kiểu sẽ không được phép tồn tại nữa. Cũng giống như những người tham gia xây dựng một công trình có thể hiểu nhau, cùng làm dựa trên các bản vẽ xây dựng, những người tham gia xây dựng CPĐT sẽ dễ dàng hiểu nhau, cùng phối hợp trên nền một bộ ngôn ngữ mô hình kiến trúc CPĐT chung.

2- Phần mềm xây dựng kiến trúc (enterprise architecture tools)

Nói đến CPĐT tức là nói đến phần mềm là công cụ cơ bản của nó. Vì vậy, xây dựng, bảo trì một kiến trúc CPĐT cụ thể cũng không thể thiếu phần mềm công cụ. Lợi ích của việc dùng phần mềm công cụ có lẽ không cần phải bàn cãi.

Xây dựng CPĐT tức là áp dụng phần mềm, truyền thông vào các công việc, dịch vụ của chính phủ. Vậy thì khi xây dựng kiến trúc CPĐT chẳng có lý do gì không dùng các phần mềm xây dựng kiến trúc hệ thống có sẵn.

Nghiên cứu, lựa chọn một hoặc nhiều phần mềm xây dựng kiến trúc hệ thống là nhiệm vụ của một đề tài riêng, nên được thực hiện và quy định thống nhất trong toàn hệ thống. Một số gợi ý, danh mục có thể xem tại 26, 27

e) Mô hình phát triển

Xây dựng CPĐT, nhất là vào giai đoạn hiện nay bắt đầu dựa vào khung và kiến trúc, chúng ta giống như những người lần đầu tiên xây dựng một ngôi nhà riêng cho mình. Kiến thức, kinh nghiệm, đội ngũ chuyên gia đều rất thiếu. Vì vậy:

  • Việc sử dụng tư vấn kỹ thuật nước ngoài là cần thiết. Nhưng có lẽ tư vấn nước ngoài về quản lý quá trình triển khai (ví dụ: quản lý gói thầu xây dựng khung CPĐT nói trên) cũng nên có, nhất là với những dự án đầu tiên.
  • Trong mọi lúc, mọi nơi có thể, cần sử dụng các công cụ có sẵn. Như ví dụ đã nêu ở trên, để tìm hiểu so sánh kinh nghiệm xây dựng CPĐT các nước cũng cần có một khung đánh giá và các tiêu chí cụ thể. Thực tế một số công trình đã thực hiện chưa chú ý sử dụng công cụ, suy luận theo nhận thức chủ quan, thậm chí chọn công cụ rồi nhưng không theo đến cùng. Đó là một điều đáng tiếc.
  • Thách thức lớn nhất với chúng ta khi bước vào xây dựng, áp dụng kiến trúc CPĐT như đã nói ở trên là kiến thức, kinh nghiệm, đội ngũ chuyên gia đều rất thiếu. Vì vậy, mô hình phát triển kiến trúc CPĐT cho các địa phương, bộ, ngành nên theo hướng “phát huy trí tuệ tập thể”: a/ Công khai hóa quá trình triển khai và các kết quả từng bước trên Internet để mọi người có thể tham gia, b/Chia sẻ, cho phép sử dụng chung các kết quả đạt được và c/Tiến tới xây dựng được một cộng đồng CPĐT bao gồm người quản lý, người thiết kế, người sử dụng, người thử nghiệm, đánh giá, v.v…. ở trong và ngoài nước có thể trao đổi, chia sẻ kinh nghiệm và các kết quả kiến trúc công khai trên mạng (tất nhiên là trừ những phần “mật”).
    Tóm lại là theo mô hình phát triển “mở” tương tự như mô hình phát triển Phần mềm Tự do Nguồn mở. Với nguồn lực nhân sự còn thiếu và yếu, có lẽ đó là cách duy nhất đảm bảo thành công khi triển khai đại trà.

3- Lời kết:

Các ý kiến nêu trên đây chỉ có tính chất gợi mở, đặt vấn đề. Các tài liệu đã dẫn cũng chỉ để nêu vấn đề, tham khảo, không có nghĩa là tài liệu tốt nhất, còn rất nhiều tài liệu khác tương tự. Mỗi vấn đề đặt ra đều đòi hỏi được nghiên cứu đầy đủ, bài bản và sâu sắc hơn bởi một đội ngũ chuyên gia dù chỉ để ra đầu bài, hiểu, điều khiển và đánh giá, nghiệm thu được kết quả của tư vấn.

Trước đây, người viết bài này cũng mới tìm hiểu được một phần về chiến lược và kiến trúc doanh nghiệp điện tử với dự định áp dụng nhưng không có điều kiện thực hiện. Tuy vậy, cũng mạnh dạn đóng góp vì lợi ích chung. Xin cám ơn anh Lê Trung Nghĩa, bộ KHCN đã giúp nhiều tài liệu tham khảo.

Hy vọng là có ích. Mọi ý kiến xin gửi về địa chỉ phanvinhtri@gmail.com.

Tài liệu trích dẫn:

1‘About The Zachman Framework TM’ <http://www.zachman.com/about-the-zachman-framework&gt; [accessed 11 March 2012].

2‘TOGAF® 9.1’, p. 3 <http://pubs.opengroup.org/architecture/togaf9-doc/arch/index.html&gt; [accessed 19 March 2012].

3‘A Comparison of the Top Four Enterprise-Architecture Methodologies’ <http://msdn.microsoft.com/en-us/library/bb466232.aspx&gt; [accessed 18 March 2012].

4‘Uganda E-govt_framework_June 2010.pdf’ <http://www.nita.go.ug/uploads/Final%20Draft%20E-govt_framework_June%202010.pdf&gt; [accessed 28 March 2012].

5‘Federal Enterprise Architecture Framework’ <http://www.cio.gov/documents/fedarch1.pdf&gt; [accessed 7 April 2012].

6‘How to Survive in the Jungle of Enterprise Architecture Frameworks: Creating … – Jaap Schekkerman – Google Sách’ <http://books.google.com.vn/books/about/How_to_survive_in_the_jungle_of_enterpri.html?id=k_9cUrpT4lsC&redir_esc=y&gt; [accessed 12 March 2012].

7‘A Comparison of the Top Four Enterprise-Architecture Methodologies’.

8‘Zachman International® – The Official Home of The Zachman Framework TM’ <http://www.zachman.com/&gt; [accessed 19 March 2012].

9‘TOGAF® 9.1’.

10‘Federal Enterprise Architecture (FEA) | The White House’ <http://www.whitehouse.gov/omb/e-gov/fea&gt; [accessed 14 April 2012].

11‘Why Gartner Is Critical To Your Business’ <http://www.gartner.com/technology/why_gartner.jsp&gt; [accessed 12 April 2012].

12‘The New Enterprise Architecture (Gartner)’ <http://www.gartner.com/pages/story.php.id.2226.s.8.jsp&gt; [accessed 12 April 2012].

13‘Comparison of the Top Six Enterprise Architecture Frameworks’ <http://www.cioindex.com/enterprise_architecture.aspx&gt; [accessed 16 April 2012].

14‘Enterprise Architecture (EA) Frameworks List | DesktopAuditing’ <http://www.desktopauditing.com/enterprise-architecture-ea-frameworks-list&gt; [accessed 19 March 2012].

15‘Dok_eGov-Basic-Concepts.pdf’ <http://147.86.7.23/wikigov/images/b/b0/Dok_eGov-Basic-Concepts.pdf&gt; [accessed 14 April 2012].

16‘A Comparison of the Top Four Enterprise-Architecture Methodologies’.

17‘Evaluation Methodology for National Enterprise Architecture Frameworks.pdf’ <http://www.ictinnovations.org/htmls/papers/ictinnovations2010_submission_20.pdf&gt; [accessed 20 March 2012].

18‘Overview of Enterprose Architecture Work in 15 Countries’ <http://www.vm.fi/vm/en/04_publications_and_documents/01_publications/04_public_management/20071102Overvi/FEAR_ENGLANTI_kokonaan.pdf&gt; [accessed 16 April 2012].

19‘Undp-gif-overview.pdf’, p. 1 <http://www.ibm.com/ibm/governmentalprograms/undp-gif-overview.pdf&gt; [accessed 20 March 2012].

20‘Undp-gif-overview.pdf’, p. 2.

21‘Interoperability Frameworks and Enterprise Architectures in Egovernment Initiatives in Europe and the United States’, p. 13 <http://www.upv.es/~lguijar/nova/investigacio/pubs/Guijarro2007SelfArchive.pdf&gt; [accessed 29 March 2012].

23‘Danish White Paper on Enterprise Architecture’, p. 41 <http://en.itst.dk/it-architecture-standards/publications/whitepaper-on-it-architecture/whitepaper.pdf&gt; [accessed 13 April 2012].

24‘Interoperability Frameworks and Enterprise Architectures in Egovernment Initiatives in Europe and the United States’, p. 20.

25‘Enterprise Architecture Tool Selection Guide V6.3.pdf’ <http://www.enterprise-architecture.info/Images/EA%20Tools/Enterprise%20Architecture%20Tool%20Selection%20Guide%20v6.3.pdf&gt; [accessed 16 April 2012].

26‘Enterprise Architecture Tools, Institute For Enterprise Architecture Developments (IFEAD)’ <http://www.enterprise-architecture.info/EA_Tools.htm&gt; [accessed 16 April 2012].

27‘Enterprise Architecture Tool Selection Guide V6.3.pdf’.

Về nền tảng M$.

Đặt vấn đề : Muốn ủng hộ Phần mềm tự do nguồn mở (FOSS) thì trước hết cần nghiên cứu kỹ đối thủ của nguồn mở là nguồn đóng,  mà Trùm Sò là chú Táo khuyết Apple và chú Biu M$, vậy nên tìm hiểu xem các chú ấy có cái gì hè ?  :-D
Đây là phần chú Biu M$

Only Microsoft brings you a complete set of innovative
platforms and technologies that help you shape the future.  Whether you develop
for mobile, desktop, or the cloud–you are always playing in a single universe
of devices and services. It’s time to go exploring.

Chỉ M$ mới mang đến cho bạn một bộ hoàn chỉnh các nền tảng sáng tạo và công nghệ, giúp bạn định hình tương lai. Cho dù bạn phát triển phần mềm cho điện thoại di động, máy tính để bàn, hoặc điện toán đám mây – bạn luôn được chơi trong một thế giới các thiết bị và dịch vụ thống nhất. Hãy để chút thời gian khám phá…

(Chú Biu gáy to ghê)


Featured platforms and tools



Windows logo

Windows
Reach more people on more devices in 200 markets worldwide.
Visit the Dev Center



Windows Phone logo

Windows Phone

Discover the fastest-growing mobile OS on the market.

Visit the Dev Center

 

Windows Azure logo

Windows Azure

Need a cloud-based backend for your app? We’ve got you covered.

Visit the Dev Center


Office logo

Office

Develop productivity apps in their native environment—locally or in the cloud.

Visit the Dev Center



Xbox logo

Xbox

Imagine your game on more than 76 million consoles worldwide.

Visit the Dev Center

 

Visual Studio

Create a new breed of applications with these powerful tools.

Visit the Dev Center


Cloud and server


Windows Server logo

Windows Server

Discover the power and scalability of a Cloud OS.

Visit the Dev Center

 

SQL Server image

SQL Server

Turning big data into big insights begins here.

Visit the Dev Center


Windows Azure SQL logo

Windows Azure SQL Database

From backup to backend, cloud database applications are changing business.

Visit the Dev Center


BizTalk Server image

BizTalk Server

Extend your existing apps and connect cloud applications, mobile devices, and
external partners.

Visit the Dev Center


Business and enterprise


SharePoint logo

SharePoint

Apps that revolutionize work on the most popular collaboration platform in the
world. 

Visit the Dev Center



Exchange logo

Exchange

146 billion e-mails are sent per day. How will you enable better communications?

Visit the Dev Center



Lync logo

Lync

Tomorrow’s workplace is anywhere you are. Add your vision to the future.

Visit the Dev Center

 

Microsoft Dynamics logo

Dynamics

Resource planning is essential to companies and organizations. The only thing
missing is your idea.

Visit the Dev Center


More resources


Take a step:



Success stories
See how easy it is to develop with Microsoft—and how it pays off.
Watch now



Get social

Connect with tech advisors. Get some perspective. Attend an event.

Jump in



Get started

Kick off your project with Microsoft’s development tools. 

Download now




Serious fun

Ready to turn your game idea into reality?

Here’s your roadmap

Dev centers

 

 

Learning resources

Community

Support

Programs