Archives for: October 2004

Techniques to Capture and Analyze Business Requirements

10/23/04 | by Clarise Z. Doval Santos [mail] | Categories: Techniques

An application system, whether custom developed or bought as a custom off-the-shelf (COTS) or packaged application software, is not useful if it does not meet the needs of its users. The key to a successful project requirements analysis is not just examining business processes with a focus geared towards technical concerns such as system design, architecture and data modeling. It should be balanced with the effective analysis and modeling of the business problem and business process dynamics.

One technique to capture business requirements is to create Use Cases. Use cases describe a way in which the users interact with the system. A well designed use case is complete and uses the point of view of the users and their corresponding roles in relation to the system as well as their interaction.

Another technique is creating a business process flow diagram or sometimes called Process Flow Diagram. It enables the understanding of and the analysis of business activities through a graphic description.

There are other techniques to capturing and analyzing business requirements. The important key to remember is: The ROI of the system is achieved if the project team creates the technical solution that truly meets the needs of the users.

Permalink

Writing a Design Document

10/17/04 | by Clarise Z. Doval Santos [mail] | Categories: Techniques

Creating a design document is one of the tasks in a software development project. A Design Document is a comprehensive plan for the project. It should present both a high level and a detailed design for the application. The high level design should provide an overview of the approach. The detailed design should provide all the information that is needed to implement the solution.

There is no single approach in documenting a design. However, when I develop a Design Document, I always ask myself these:

- Can one develop the envisioned application with this Design Document and its corresponding Requirements Document?

- If this Design Document is given to several teams to implement, would the resulting application work the same way?

I believe, if a Design Document is well written the answer to both questions will be "Yes".

A sample outline could include the following:

1.0 Introduction
1.1 Project Background
Brief Description of the project including the system owner.

1.2 Document Objectives
Briefly describe the objectives the Design Document; Explain that the design document is a living document during the project life cycle

1.3 References
Identify sources of information used to develop this document; this could include the Requirements Document, Design Decision Documentation and other Requirements Traceability Matrix.

1.4 Glossary
Define the terms used in the document and in the project

2.0 System Overview
2.1 Business Process
Describe the business processes that will be modeled by the system.

2.1.1 Logical Process Flow
The logical process flow is meant to visually describe the logic and flow of an application process. The purpose of the Logical Process Flow document is to communicate and confirm expected functionality.

2.1.2 Business Process Model
This model should define every business rule that needs to be implemented. Use the logical process flow to help group all the business rules.

2.2 System Users
Identify the potential system users and levels of expertise needed by the various user types; Indicate how each user type will interact with the system

2.3 Dependencies and Limitations
List any dependecies and limitations of the application

3.0 Overall Architecture

3.1 Structure
Decompose the system into design entities that will interact with and transform data

3.2 Data Design and Control
Identify specific data elements and logical data groupings that are stored and processed by the design entities in 3.1

3.3 Security
Describe the application Security

4.0 User Interface
Describe the user interface and the operating environment, including the menu hierarchy, data entry screens, display screens, online help, and system messages.

5.0 Database Design

5.1 Data Flow Diagrams

5.2 Data Model

5.3 Data Mapping

6.0 Requirements Cross Reference
Tie back the document to the requirements

Permalink

What are new or updated features in Oracle 10g that are directly related to database performance?

10/03/04 | by Clarise Z. Doval Santos [mail] | Categories: Databases

What are some enhancements in Oracle 10g that are directly related to database performance? Here is a summary of new or updated features in 10g based on
Oracle Database Performance Tuning Guide 10g Release 1 (10.1)

1. Automatic Performance Diagnostic and Tuning Features
10g has the following Diagnostic and Tuning tools:
- Automatic SQL Tuning Advisor
- Automatic Database Diagnostic Monitoring (ADDM)
- Automatic Optimizer Statistics Collection
- Automatic Workload Repository (AWR)

2. Oracle Trace Obsolescence
Oracle Trace as a functionality is no longer available. For the tracing of database activity, SQL Trace or TKPROF should be used instead.

3. Rule-based Optimization (RBO) Obsolescence
RBO is no longer supported in 10g. It is available as a non-supported feature to provide backwards compatibility. Oracle Metalink provides desupport notices and related articles.

4. Automatic Shared Memory Management
Automatic Shared Memory Management utilizes self-tuning algorithms to put Oracle in control of allocating memory within the SGA. Normally, SGA is controlled by DB_CACHE_SIZE (default block size), SHARED_POOL_SIZE, LARGE_POOL_SIZE, JAVA_POOL_SIZE. To utilize Automatic Shared Memory Management, the STATISTICS_LEVEL is set to TYPICAL or ALL and the SGA_TARGET is set to a value other than "0". The SGA_TARGET parameter sets the amount of memory available to the SGA.

5. Wait Model Improvements
The following views have been modified:
V$EVENT_NAME
V$SESSION
V$SESSION_WAIT
The following are new views:
V$ACTIVE_SESSION_HISTORY
V$SYSTEM_WAIT_HISTORY
V$SESS_TIME_MODEL
V$SYS_TIME_MODEL
V$SYSTEM_WAIT_CLASS
V$SESSION_WAIT_CLASS
V$EVENT_HISTOGRAM
V$FILE_HISTOGRAM
V$TEMP_HISTOGRAM

6. Optimizer Hints
The following are new Hints:
- "SPREAD_MIN_ANALYSIS": specifies analysis options for spreadsheets
- "USE_NL_WITH_INDEX": specifies a nested loops join.
- "QB_NAME": specifies a name for a query block.
- "NO_QUERY_TRANSFORMATION": causes the optimizer to skip all query transformations.
- "NO_USE_NL", "NO_USE_MERGE", "NO_USE_HASH", "NO_INDEX_FFS", "NO_INDEX_SS", and "NO_STAR_TRANSFORMATION": cause the optimizer to exclude various operations from the execution plan
- "INDEX_SS", "INDEX_SS_ASC", and "INDEX_SS_DESC": cause the optimizer to use index skip scan operations in the execution plan
The following have been deprecated:
- AND_EQUAL
- HASH_AJ
- MERGE_AJ
- NL_AJ
- HASH_SJ
- MERGE_SJ
- NL_SJ
- EXPAND_GSET_TO_UNION
- ORDERED_PREDICATES
- ROWID
- STAR

7. Hash Partitioned Global Indexes
Hash Partitioned Global Index can improve performance of indexes where a small number leaf blocks in the index have high contention in multiuser OLTP environment. With the support for hash partitioned global indexes, index entries are hashed to different partitions based on partitioning key and the number of partitions. This results in increased throughput because it spreads out contention over number of defined partitions.

8. Automatic Optimizer Statistics Collection
Automated statistics collection reduces the chances of getting poor execution plans because of missing or stale statistics. Automated statistics collection allow Oracle to gather the statistics on all database objects automatically and maintains those statistics in a regularly-scheduled maintenance job.

Permalink

MySQL Error 1130 when connecting from MySQL Control Center

10/03/04 | by Clarise Z. Doval Santos [mail] | Categories: Databases

I am running MySQL control center on a Windows 2000 box and trying to connect to a newly installed mysql database on a Linux box. How do I solve this error:
[mysql] ERROR 1130: Host 'HOSTNAME' is not allowed to connect to this MySQL server ?

Answer:
Issue the following:

$ mysql -uUSERNAME -pPASSWORD mysql
mysql> grant all on * to 'USERNAME' identified by 'PASSWORD';

This will give the user, specified by 'USERNAME', all the privileges on all the tables and be able to connect from any host. Hence, if you issue:

mysql> select user, host from user;

The result will be something like:
+--------------+-----------+
| user | host |
+--------------+-----------+
| admin | % |
| admin | localhost |
| blogmaster | localhost |
| horde | localhost |
| surveymaster | localhost |
+--------------+-----------+

So, you may want to modify the SQL statement if you don't want to grant the user all the privileges. :)

Permalink
October 2004
Mon Tue Wed Thu Fri Sat Sun
 << < Current> >>
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

This blog contains thoughts that range from non-technical to technical. Its name is derived from "Yakity Blah Blah" a column I once had that discussed a cornucopia of ideas. Who am I? I'm Clarise Z. Doval Santos, providing Project Management and Technical Leadership as part of InterActive Systems & Consulting, Inc.

InterActive Systems & Consulting, Inc. (IASC) performs research in the areas of data analytics, collaboration and remote access.

InterASC Professional Services, a service mark of IASC, provides strategic consulting and project management for data warehousing, business intelligence and collaboration projects using proprietary and open source solutions. We formulate vendor-independent strategies and implement solutions for information management in an increasingly complex and distributed business environment, allowing secure data analysis and collaboration that provides enterprise information in the most valuable form to the right person, whenever and wherever needed.

TeleInterActive Networks, a service mark of IASC, hosts open source applications for small and medium enterprises including CMS, blogs, wikis, database applications, portals and mobile access. We provide the tools for SME to put their customer at the center of their business, and leverage information management in a way previously reserved for larger organizations.

37.652951177164 -122.490877706959

Search

XML Feeds

Blogroll

  • Business Life
Powered by b2evolution