Lesson 1: How to Develop a Customer Ticket Management System in Vb.net (Lesson 1 Focus: Overview) #Root #By Sayed Ahmed

I will demonstrate step by step software development in different platforms using different approaches. Platform for this lesson is: VB.net and MS SQL Server. I will provide short-notes and video trainings incrementally. I will update the notes time to time.

  • Project Focus: We assumed as part of the project management process of an imaginary company, a project charter is approved.
  • Project Charter: In the initiation phase of project management, a project charter is created describing the details of the project
  • Project Statement: Key Features from the Project Charter:
    • The project will develop a customer ticket management system.
    • Phone calls and emails from the customers will create a ticket in the system (only if the customers select the option to create a ticket. Appropriate category also need to be selected by the customers).[will not be demonstrated in my lessons]
    • Customers will be able to place tickets from the company web-site
    • Tickets should be assigned to the TSRs. TSRs performance need to be tracked
    • Ticket histories need to be maintained
    • Customer activities need to be monitored
  • Now the Project Planning Phase:
    • Now we need to plan the project. It involves, time management plan, cost management plan, communication management plan, human resource management plan, quality control plan (setting the quality attributes of the software, how to measure quality), quality assurance plan (how to achieve the quality), risk management plan, project closing plan, plan on ethical aspects of the project.
    • In planning phase, timing for these activities can also be set/determined.
    • However, to work on the planning, we need a detail understanding of the software/system/requirements. System analysis may be done at this point to understand the software/system/requirements. Project managers may define the time lines for system analysis as well.
    • System analysis may be run in this phase to understand the system better and also to find out the requirements of the software
    • Based on the system analysis, a detail requirements can be determined. A work breakdown structure can be created.
    • Human resource management plan can be done at this point [or after time management plan. We are in planning step. Hence, things can really overlap]. Based on the system analysis, it can be determined, how many people will be required. What will be the responsibilities of the people involved. Human resource management will also be affected by the project budget and time requirements
    • For time management plan: the project manager can assign time (in hour) for each task/work. It can be based on the type of the work, past experience of the project manager, similar assignments done in the company, the formula time = (best estimate+4*reasonable estimate + worst estimate)/6 may be used. As part of project risk management, some buffering on time may be kept/considered.
    • Then cost can be planned for each task/work. Based on the budget, and time requirements cost can be assigned to each work/task. Also, the hourly rate of the people involved will affect the cost management.
    • Later I will provide notes on other planning
  • Here, I will also provide notes on system analysis later

From: http://sitestree.com/?p=3663
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:19:31

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Securing MySQL Database #Root #By Sayed Ahmed

Mainly deals with TestDb

After installing mysql, we will need to remove test database and associated users and their permissions. We will need to use mysql database to remove associated users and permission.

— DROP DATABASE test;

— SELECT db.Host, db.Db, db.User, db.Select_priv -> FROM db WHERE (db.DB = “vworksDB”); From: http://sitestree.com/?p=3661
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:19:47

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

How to optimize query response time? #Root #By Sayed Ahmed

  • Check that only the required columns are selected [in select statements]
  • Check that the right types of joins are used
  • Check that if re-ordering the joins will help or not
  • Check the indexes of the tables [is indexing done on the right columns]
  • Check that in joins you used the indexed columns in the join condition
  • Check that the operating system is configured for optimum performance [for SQL Server]
  • Use concepts like Scaling Up and Scaling Out to increase the overall performance of queries/SQL Server
  • Use Dynamic Management Views to analyze the query performance/(query execution plans)
  • Use hints to skip default query execution plan to introduce your plan for quick response. Use hints on join types or also for table index selection
  • Check that the system and the network are appropriately configured and there are no issues that can cause the performance penalty
  • Tools that may help in the analysis and improvement: DBCC Commands, Dynamic Management Views, SQL Server Profiler, SQL Server Management Studio, System Stored Procedures, and SQL Trace
  • Check these articles for more information

From: http://sitestree.com/?p=3659
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:19:59

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Deploying .Net Windows Applications #Root #By Sayed Ahmed

  • Ways to deployment: XCOPY, Automated setup application
  • Use XCOPY only when there is no external dependencies other than .Net framework. And it is guaranteed that .Net framework is installed in all the target machines. Also, make sure the application directory contains all the files.
  • Command example: XCOPY d:myApplication c:deployedApplication /s — /s indicates subdirectories will also be copied
  • Setup Applications: two types: setup projects and merge module projects
  • Setup projects: installs your application to the target machine
  • Merge module projects: Used to deploy controls and components. It can be merged with a setup project
  • To create setup project: File Menu->Add Project -> New Project->setup project-> setup project creation wizard comes. Select options as appropriate. It will be mostly common sense.
  • Merge module project: File Menu->Add Project -> New Project->setup and deployment project-> setup wizard. Select options as appropriate. It will be mostly common sense.
  • Setup project is also displayed in the project explorer. Right click and select properties to provide build properties.

From: http://sitestree.com/?p=3657
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:20:13

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Installing Apache Tomcat 6.0: Windows #Root #By Sayed Ahmed

  • Make sure you have installed J2SE 5 (both the jdk and the jre) or greater (for tomcat 6.0, j2se5 is required according to my experience)
  • Set the JAVA_HOME environment variable to the path of the JDK
  • Download Tomcat 6 from http://tomcat.apache.org/download-60.cgi
  • Click on the downloaded setup.exe file
  • Select Core+service+examples i.e. full install
  • When the installer asks for the JRE, provide the path for jre 5 (jre 6 did not work for me)
  • For user name and password I kept user name to be admin password to be blank [you can also set one]
  • Next, Next, Finish – tomcat will be installed and start running [if the option was selected]
  • Set the CATALINA_HOME environment variable to the installation path of the Tomcat 6.0 – it is important for deploying J2EE web applications under Tomcat

From: http://sitestree.com/?p=3655
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:20:21

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Should you learn Websphere? #Root #By Sayed Ahmed

Yes, you can. Why? IBM Websphere products are used by many reputed enterprises/companies as their software development platforms. Just to mention Websphere is really the name of a group of enterprise software development tools from IBM where Websphere application server is the central tool. The platform is J2EE centric. If you plan to build your career in J2EE area, learning Websphere is a great investment.

How easy is it to learn? if you are already familiar with Java, J2SE, J2EE, Eclipse, web-servers like Tomcat, Weblogic learning Websphere will not be a big deal. However, you will require good/right resources like the right book and the tools From: http://sitestree.com/?p=3651
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:20:33

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

More CSS Layouts #Root #By Sayed Ahmed

Three Column layout with header and footer: The CSS

html, body { margin: 0; padding: 0; }
#header {
width: 800px;
float: left;
}
#maincontainer {
width: 800px;
float: left;
}
#nav {
width: 200px;
float: left;
}
#main {
float: right;
width: 600px;
}
#footer {
width: 800px;
float: left;
}

The XHTML

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />
<title>2 Column Header and Footer Layout</title>
<link href=”styles.css” rel=”stylesheet” type=”text/css” />
</head>

<body>
<div id=”header”><h1>Header</h1></div>
<div id=”maincontainer”>
<div id=”main”>
<p>Whee</p>
<p>
</div>
<div id=”nav”>
<ul>
<li><a href=””>Link</a></li>
<li><a href=””>Link</a></li>
<li><a href=””>Link</a></li>
<li><a href=””>Link</a></li>
</ul>
</div>
</div>
<div id=”footer”><h4>Footer</h4></div>
</body>
</html>

From: http://sitestree.com/?p=3649
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:20:36

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Matlab Overview: What is Matlab #Root #By Sayed Ahmed

Matlab is used for: Math and computation, Algorithm development, Data acquisition, Modeling, simulation, and prototyping, Data analysis, exploration, and visualization, Scientific and engineering graphics, Application development, including graphical user interface building. From: http://sitestree.com/?p=3647
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:20:51

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

Creating Custom Tags in JSP #Root #By Sayed Ahmed

By Sayed, January 13th, 2008 [use large font in IE/Firefox]

How to create custom tags in JSP?
You can create custom tags in JSP. 
Steps:
-----
1. You have to create a Java file that will define the operation of the custom tag
2. For the Java file, you have to extend javax.servlet.jsp.tagext.BodyTagSupport class
3. in your implementation, you have to override (re-write) doStartTag(), doEndTag(), 
and doAfterBody() methods
4. Create tag library description file(XML file with .tld extension).

Example
-------

Implement a tag that reverses a string


import java.io.IOException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.BodyContent;
import javax.servlet.jsp.tagext.BodyTagSupport;

public class ReverseTag extends BodyTagSupport 
{
    private static final long serialVersionUID = 1L;    
    
    //override doStartTag
    public int doStartTag() throws JspTagException{
        return EVAL_BODY_TAG;
    }    
    
    //override doEndTag
    public int doEndTag() throws JspTagException 
    {
      try {
           JspWriter out = pageContext.getOut();
      } catch (Exception ex) {
           throw new JspTagException("Exception" + ex);
      }
    return SKIP_BODY;
 }

//reverse the text    
public int doAfterBody() throws JspTagException 
{
    BodyContent body = getBodyContent();
    try {
            JspWriter out = body.getEnclosingWriter();
            //get text inside the tag
            String bodyContent = body.getString();
            //reverse the text
            if (bodyContent != null) {
                for (int i = bodyContent.length() - 1; i >= 0; i--) {
                    out.print(bodyContent.charAt(i));
                }
            }
            out.println();
            body.clearBody(); // Clear for next evaluation
          } catch (IOException ioe) {
               throw new JspTagException("Exception at doAfterBody " + ioe);
     }
        return (SKIP_BODY);
    }
}

5. Create the taglib descriptor

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.
//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname></shortname>
    <info></info>
    <tag>
        <name>stringreverse</name>
        <tagclass>net.justetc.taglibrary.ReverseTag</tagclass>
        <info>
            Reverse the text
        </info>
    </tag>
</taglib>


6. Example use of the custom tag


<%@ taglib uri="/WEB-INF/reverse.tld" prefix="reverse" %>

<html>
<head>
    <title>Custom Tag library</title>
</head>

<body bgcolor="#ffffff">

<hr />
<reverse:stringreverse>
        justetc
</reverse:stringreverse>
<hr />
</body>
</html>


From: http://sitestree.com/?p=3645
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2016-09-15 14:21:09

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada

On Requirements Management and Tools #Root #By Sayed Ahmed

The Subject:

Better Requirements Definition Management is Better for Business

http://www.methodsandtools.com/archive/archive.php?id=107

 

All You Need to Know About Requirements Management

http://www.elementool.com/blog/?p=457

 

Why do I need a Requirements Management tool?

http://blog.visuresolutions.com/2012/02/why-do-i-need-requirements-management.html

 

Selected Topics in Software Engineering: Software Quality Verification and Forecasting
http://www.iste.uni-stuttgart.de/rss/teaching/ws-20152016/s-sqvf.html

 

 

Tools:

Top Requirements Management Software Products

http://www.capterra.com/requirements-management-software/

 

 

List of Requirements Management Tools

http://makingofsoftware.com/resources/list-of-rm-tools

 

What’s a good way to do requirements management in Jira? [closed]

http://pm.stackexchange.com/questions/6206/whats-a-good-way-to-do-requirements-management-in-jira

 

Using JIRA for Requirements Management

https://confluence.atlassian.com/display/JIRAKB/Using+JIRA+for+Requirements+Management

 

Misc:

The Effect of Work Environments on Productivity
http://research.microsoft.com/pubs/255563/MSR-TR-2015-66.pdf

 

 

Research in Software Engineering (RiSE)

http://research.microsoft.com/en-us/groups/rise/

 

  From: http://sitestree.com/?p=3171
Categories:Root, By Sayed Ahmed
Tags:
Post Data:2015-10-24 16:02:25

Shop Online: https://www.ShopForSoul.com/
(Big Data, Cloud, Security, Machine Learning): Courses: http://Training.SitesTree.com
In Bengali: http://Bangla.SaLearningSchool.com
http://SitesTree.com
8112223 Canada Inc./JustEtc: http://JustEtc.net (Software/Web/Mobile/Big-Data/Machine Learning)
Shop Online: https://www.ShopForSoul.com/
Medium: https://medium.com/@SayedAhmedCanada