Ideas and Coffee at 3.47 AM

Some half baked beans... Tao, Zen and the art of converting coffee into ideas...

  • Entity Framework, Business Objects and Beyond…

    Back during the RMI days, we used to generate skeleton (henceforth referred to as skel or skels) and stubs for all long range service communications… Yes… WCF has its roots there and perhaps further into the past…! Details available here.

  • Does not have a valid owner

    “Database diagram support objects cannot be installed because this database does not have a valid owner. To continue, first use the Files page of the Database Properties dialog box or the ALTER AUTHORIZATION statement to set the database owner to a valid login, then add the database diagram support objects”

  • Xsd to Database

    There are times when you have to work with XML. Yes those dreadful times. Specially the times when you get data as XML. And not just master data you sometimes get transactional data in XML. Think about it. How much worse can it get if you had to work with transactional data, and sync it with the database?

  • Your user profile was not loaded correctly! You have been logged on with a temporary profile.

    This is not a problem that I feel you would encounter on a regular basis. I think I had a unique problem because of which I encountered this one. When you install an operating system it allows you to create a profile. Now I installed the machine at home. Which means I was not on the corpnet of Microsoft which means I could not log on to the domain. So when I created a profile named after my alias, it was considered as a local profile and not a domain profile. And a folder was created under “C:\Users” with my alias name.

  • Function Point Analysis (FPA) Glossary

    1. Internal Logical File (ILF): An internal logical file (ILF) is a user identifiable group of logically related data or control information maintained within the boundary of the application. The primary intent of an ILF is to hold data maintained through one or more elementary processes of the application being counted.
    2. External Interface File (EIF): An external interface file (EIF) is a user identifiable group of logically related data or control information referenced by the application, but maintained within the boundary of another application. The primary intent of an EIF is to hold data referenced through one or more elementary processes within the boundary of the application counted. This means an EIF counted for an application must be in an ILF in another application.
    3. Data Element Type (DET): A data element type (DET) is a unique, user-recognizable, non-repeated field.
    4. Record Element Type (RET): A record element type (RET) is a user-recognizable subgroup of data elements within an ILF or EIF.
    5. File Type Referenced (FTR): FTR's are the combined number of Internal Logical Files (ILF's) referenced or updated and External Interface Files referenced
    6. External Input (EI): An external input (EI) is an elementary process that processes data or control information that comes from outside the application’s boundary. the primary intent of an EI is to maintain one or more ILFs and/or to alter the behavior of the system.
    7. External Output (EO): An external output (EO) is an elementary process that sends data or control information outside the application’s boundary. the primary intent of an external output is to present information to a user through processing logic other than or in addition to the retrieval of data or control information. The processing logic must contain at least one mathematical formula or calculation, or create derived data. An external output may also maintain one or more ILFs and/or alter the behavior of the system.”
    8. External Inquiry (EQ): An external inquiry (EQ) is an elementary process that sends data or control information outside the application boundary. The primary intent of an external inquiry is to present information to a user through the retrieval of data or control information. The processing logic contains no mathematical formula or calculation, and creates no derived data. No ILF is maintained during the processing, nor is the behavior of the system altered.
    9. General System Characteristics (GSC): The data and transactional functions discussed in earlier chapters together represent the total business functions that are delivered through the application being counted. Truly this is the logical representation of the functionality and does not address the physical implementation of the functions in an IT environment. The FPA method of IFPUG has captured the critical implementation features of typical applications through 14 general system characteristics. These encompass almost all the major implementation complexities that can exist, and through careful evaluation of each of the GSCs, the estimator can arrive at final function point count that includes logical as well as physical implementation properties of the application being counted.
    10. Value Adjustment Factor (VAF): Calculated ((Total Degree of Influence * 0.01) + 0.65)
    11. Calibration Factor (CF): general buffer depending upon practical environment
    12. Delivery Rate (DR): No. of function points a single developer will accomplish every month
    13. Days per person month (DPM): The no. of days a person will effectively work in a month. 20 working days in a month and Microsoft generally counts 75% utilization which means around 15 working days in a month.

  • Update an entity in Repository Pattern

    Look around the web. You will find no Update method in the repository patterns for entity framework implementations published. There are different flavors of retrieves, mark for insertions an deletions but no update implementation. And curiously this is the most painful. There are 2 options that you have. But to explain both, I will start off with the repository design. We can get into a discussion about the pattern in case anyone is interested, all you have to do is instigate me by posting a comment.

  • Repository Pattern – The purpose

    We decided to implement the repository pattern for the Entity Framework Implementation in our project. So last couple of weeks people have been asking me why the repository pattern is required. I mean what is it that this pattern does besides giving a layer of abstraction, and providing the CRUD methods, which are also available in C# as a language feature (LINQ).

  • Are you Eager? Or are you Lazy? Or are you both on a case to case basis...??

    Entity Framework, Eager Loading and Lazy Loading, my own 2 cents. For those new to Entity Framework, we are talking about the patterns that you can use to load related objects. The strategy by which you would load entity objects that are related to the one in question. There is a beautiful resource that mentions it all. I do not think there is any elaboration required in that matter. But this is not the meat of the matter.

  • StyleCop and Good Code

    So you are serious about your code quality huh... well StyleCop is a fantastic tool to ensure that. The best part is, it integrates with Studio 2008. It is simple.

  • Entity Framework FAQ

    Lately everyone in my team and around my bay have been talking about Entity Framework. Well since I have been an early adopter, writing my small apps using Entity Framework and fighting for it on my project, people have been coming to me to ask questions. I have been taking pride in answering them (happy to help), most of the times... until lately... since I have been working on too many things...