Friday, 15 March 2013

UML diagrams



What is UML 

         UML diagrams are draws to help you visualize your project structure. its used to communicate a software design among team members, 
so its easy to understand how system conponents  interact in a drawings and diagrams; rather than reading someone code. 
Most of UML diagrams are high-level representation of code, and not concerned with implementation details.

Best way to use UML, is up to you
You can use UML in two different ways, as forward engineering or reverse engineering 
  • Forward engineering, when you draw your system UML diagrams before coding, this is called forward engineering. as you will follow your UML design in the coding phase
  • Reverse engineering, when you have a code, and to translate it to UML diagrams for easy understanding and communication with the team members. here you do the process in reverse order

How people use UML
             In software community, people use UML with different perspective, there are three main perspectives on how to use UML

  • Sketch
    • you do informal sketches, that depict the whole system, and omit details, this is the common method
  • Blueprint
    • you dig into more details of the design, in this methods, its handled to software deigner who will convert the system concept into easy small components in UML diagram that developers can follow. software designer may be a more experienced developers or a specialized one in software design. 
    •  The difference between sketchy and blueprint UML diagrams is blurry. and could go between those perspective. so its not easy to look at UML diagram and say "this is a sketch diagram" or "i am sure this is a blueprint diagram". 
  • Programming language
    • not a common method of using UML, where it use UML as programming language. and it has its own UML compiler. however this approach is not practical most of the time


Some of common UML diagrams
  • class diagram
  • sequence diagram
  • use cases
  • state diagram
  • activity diagram (or flow chart)
and we have uncommon as well
  • communication diagram
  • packages diagram
  • timing diagram

So that's it for UML, in the coming posts i will dig into more details of common UML diagrams, and show some snapshots of "Day Player app" UML diagrams to see the UML concepts in actions.

Salam,
M.Aleem

Saturday, 9 March 2013

Day Player Icon evolution


 You will see the app icon life cycle. its all about iteration, and find something to improve from time to time.  

Thursday, 7 March 2013

App icon is more important than it's name.


What icon represent, and why its so important.  

Icons is your business cards, when some one in the Appstore search for specific application by keywords, your icons stand shoulder to shoulder to other icons. 

Friday, 1 March 2013

Day player, early wire-frames, take a peek


In the last post on the Wire-frames and prototype, we talked about what is Wire-frames  and what is the goal of this process,

in this post i will share with you the initial app Wire-frames to get idea of the whole app navigation system, and to take a peek on what you would expect in the next days. 

Thursday, 28 February 2013

Wireframing and Prototype


What is wireframe

Wireframe is a part of the interface design process,  where you ignore any aesthetic related processes. that mean you are concerned with the layout of objects, rather than the color and shape of these objects,
so you can use it like a map or story board of your application session
 

Sunday, 24 February 2013

Tuesday, 19 February 2013

Architecture (or High-level) design, shaping your project path


what is software architecture.


after you defined your problem and get the right requirements, you need an overview of the whole system, so you want to define the main components and how they relate to each other.  

Saturday, 16 February 2013

Cocoa design pattern: singleton

how the singleton is popular

      Singleton is one of popular design pattern across many frameworks, and here in IOS its one of the framework corner stone, you will see some thing like defaultCenter, mainBundle, shareObject all of theses are representation of singleton in action

Thursday, 14 February 2013

Tuesday, 12 February 2013

Cocoa design patterns: Target-Action and Observer

It's not just delegates.   

Along with delegates, you can use other ways to control interaction between objects, two important methods along with delegates are Target-action and Observer patterns


Thursday, 7 February 2013

Cocoa design pattern: Delegates


delegate design pattern is a common way in IOS to communicate between different objects, it move a way from the traditional method of objects reference to communicate with them

Tuesday, 5 February 2013

Cocoa design patterns and MVC


Cocoa design patterns
                  in order to be comfort using IOS SDK we must grasp the design behind cocoa objects. cocoa design has some common pattern you saw before in other languages like  

Thursday, 31 January 2013

We have polished the app features, take a look

"Its time to throw out the babies".  

When planning for the app. One should start big and bold, then start to throw a way the excess features.
the excess features will distract the user and make the app complex and hard to use.

Tuesday, 29 January 2013

my "lateral thinking" session results

last post i said i will do practical lateral thinking session and in the following sections, you will find the whole session output.  

Wednesday, 23 January 2013

"Give me a task", so what


In this post you will discover what our App try to solve, and why one would use it, and a short scope of our plan 

Monday, 21 January 2013

Generating ideas, what will be our tools, Part II



In part one we talked about lateral thinking and its tools, now we link lateral thinking with our app development plan

Friday, 18 January 2013

What to expect from this blog

software process 

As you guessed the blog main focus is on software construction, but it's not just abstract lessons of software construction topics.